我遇到了一个大问题,我已经尽力了,但我没有找到任何解决办法。
我有一个列表框,有一个数据模板。我想使用mouseleftbuttondown和mouseleftbuttonup事件来检查所选项目是否与用户单击的项目相同。
问题是事件mouseleftbuttonup被识别,而不是事件mouseleftbuttondown。
我的xaml代码的一部分:

<ListBox Grid.Row="1" MouseLeftButtonDown="listBox_Faits_MouseLeftButtonDown"
                      MouseLeftButtonUp="listBox_Faits_MouseLeftButtonUp">

背后的密码:
    private void listBox_Faits_MouseLeftButtonUp(object sender, MouseEventArgs e)
    {
        ...
    }
    private void listBox_Faits_MouseLeftButtonDown(object sender, MouseEventArgs e)
    {
        ...
    }

有人知道为什么吗?
谢谢你,
当做,
弗洛

最佳答案

这是因为mouseleftbuttondown事件由列表框项处理。要处理已处理的事件,可以在代码隐藏中订阅它,并指定要处理已处理的事件,如下所示:

listBox_Faits.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(listBox_Faits_MouseLeftButtonDown), true);

09-10 06:53