在双击WPF表单上的Ellipse之后,我试图捕获一个事件。我不确定这样做的最佳实践是什么,因为WPF System.Windows.Shapes不包含双击事件。
我尝试捕获点击次数为2的正常鼠标按下键。
private void SetupProjectsCOEllipse_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
//If double clicked
if (e.ClickCount == 2)
{
PopupEntityDetails(this, ProjectsContext, LocalUser, TreeSetup.SelectedItem);
}
}
答案 0 :(得分:2)
我已经通过使用ContentControl获得了想要的东西:
<ContentControl MouseDoubleClick="Ellipse_DoubleClick">
<Ellipse Name="SetupProjectsCOEllipse" Width="10" Height="10"/>
</ContentControl>
答案 1 :(得分:0)
MouseDown
应该可以正常工作,如果不是这样,那么视觉中某处的父项会阻止他的冒泡事件再次向下传播。这也解释了为什么将形状包裹在ContentControl
中以“固定”它。
下次使用PreviewMouseDown
代替。那是冒泡事件,所以您有机会在被拦截之前抓住它。