DataTemplate에 정의되고 Canvas에 배치 된 항목으로 ItemsControl을 채 웁니다. Canvas에서 이러한 항목 중 하나에서 마우스 오른쪽 버튼 이벤트를 사용하여 내 ViewModel에있는 포함 된 컬렉션에서 해당 이벤트를 제거하고 싶습니다. MVVM Light의 EventToCommand를 사용하여 작업을 시도했지만 지금까지는 아무 것도 생각 해 내지 못했습니다. 나는 그 밖의 무엇을 시도해야하는지 모른다. 그래서 나는 도움을 청한다. 어떤 조언을 주시면 감사하겠습니다.XAML의 click 이벤트에서 ViewModel에 정의 된 컬렉션에서 항목을 제거하십시오.
<DataTemplate DataType="{x:Type model:Player}">
<Canvas>
<Grid Canvas.Left="{Binding Location.X}"
Canvas.Top="{Binding Location.Y}"
MouseLeftButtonDown="Grid_MouseLeftButtonDown"
MouseLeftButtonUp="Grid_MouseLeftButtonUp"
MouseMove="Grid_MouseMove">
<Grid.LayoutTransform>
<RotateTransform Angle="-90" />
</Grid.LayoutTransform>
<Ellipse Width="12"
Height="12"
Fill="{Binding PrimaryColor}" />
<TextBlock HorizontalAlignment="Center"
VerticalAlignment="Center"
FontSize="6"
FontWeight="Bold"
Foreground="Black"
Text="{Binding Position.Abbreviation}" />
</Grid>
</Canvas>
</DataTemplate>
<Canvas x:Name="myCanvas"
Width="1440"
Height="640"
AllowDrop="True"
Background="Green"
Focusable="True">
<ContentPresenter Content="{Binding Field}" />
<ItemsControl ItemsSource="{Binding Team.Players}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Canvas AllowDrop="True" Background="Transparent" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</Canvas>
마우스 오른쪽 버튼을 클릭하여 특정 항목을 삭제하려면 삭제 옵션이있는 컨텍스트 메뉴가 필요합니까? – Nitin
하나의 오른쪽 클릭이나 컨텍스트 메뉴가 작동합니다. 상황에 맞는 메뉴는 실제로 장기적으로 나에게 더 나은 서비스를 제공 할 것입니다. –