마우스 오른쪽 버튼으로 목록 상자 항목을 삭제하고 싶습니다. 그러나 내 사건에서는 제대로 작동하지 않는 이벤트를 오른쪽 클릭하십시오. 아래 코드는 제가 시도한 코드입니다. 생성자에서WPF에서 마우스 오른쪽 버튼 클릭 이벤트가 작동하지 않는 이유는 무엇입니까?
:
listBox1.MouseDown += new MouseButtonEventHandler(listBox1_MouseRightClick);
마우스 오른쪽 클릭 XAML에서
private void listBox1_MouseRightClick(object sender, MouseButtonEventArgs e)
{
if (sender is ListBoxItem)
{
ListBoxItem item = (ListBoxItem)sender;
Harvest_TimeSheetEntry entryToDelete = (Harvest_TimeSheetEntry)item.DataContext;
MessageBoxResult Result = System.Windows.MessageBox.Show("Are you sure?", "Delete Confirmation", System.Windows.MessageBoxButton.YesNo);
if (Result == MessageBoxResult.Yes)
{
Globals._globalController.harvestManager.deleteHarvestEntry(entryToDelete);
}
else
{
System.Windows.MessageBox.Show("Delete operation Terminated");
}
}
}
:
<ListBox x:Name="listBox1" ItemsSource="{Binding}" Margin="0,131,0,59" ItemTemplateSelector="{StaticResource templateSelector}" SelectionMode="Single" MouseRightButtonDown="listBox1_MouseRightClick">
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<EventSetter Event="MouseDown" Handler="listBox1_MouseRightClick"/>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
제안하십시오를 작동 할 수 있도록 내가 마우스 오른쪽 버튼으로 클릭 이벤트를 사용하는 방법?
에
sender
캐스트로 결정한 그렇지 않은 경우 - 마우스 오른쪽 버튼을 클릭 거의 보편적으로 제기 할 수있는 안전한 방법으로 인정되는 상황에 맞는 메뉴. –나는 가까운 투표를 취소하고 질문을 더 자세히 읽은 후 의견을 삭제했습니다. –