我用 MouseEventHandler 设置了 Viewport3D
[...]
Main3DWindow.MouseUp += new MouseButtonEventHandler(mainViewport_MouseUp);
[...]
void mainViewport_MouseUp (object sender, MouseButtonEventArgs e) {
Point location = e.GetPosition(Main3DWindow);
ModelVisual3D result = GetHitTestResult(location);
if (result == null) {
_CurrentData.Unselect();
return;
}
_CurrentData.SelectItemFromObjectList(result);
}
单击对象时它工作得很好。我的期望是:如果没有点击任何对象(因为用户点击了背景),结果为空。但实际上 mainViewport_MouseUp 方法甚至没有被调用。
我的问题:如何检测 Viewport3D 背景上的点击?