I m 提供多元素(布顿、文字箱......)的WPF网网,然后作为直线3D现场3D表面的图像。 在用户互动方面,我从2D的2D型 mo曲线进入3D场现场,发现与吉表交点。 因此,我知道用户点击了WPF网的电网,但从那里发现Im st:
我怎么能够模拟关于世界森林组成部分的模拟活动,而实际上没有在开放的窗口中显示,而是在幕后进行?
最近,我正在研究UIAutomation和RaiseEvent,但被用来向个别分子,而不是整个直观树发送活动。 手工挖掘树木和寻找 cur子位置的元素是一种选择,但我没有找到准确做到这一点的途径。 视觉疗法。 手工试验是一个良好的开端,但不是发现文本Box,而是发现文本BoxView,而不是清单Box,而是发现边界。
EDIT:返回Hit-ReultBehavior。 继续执行《希特试验》的号召,让我走到某个特定点的所有部分。 现在,我可以向所有这些要素发出模拟事件,但摩加堡目标的价值是真实的。 因此,我不得不制造一种似乎是不可能的习俗。
PointHitTestParameters p = new PointHitTestParameters(new Point(
((Vector2)hit).X * sourceElement.ActualWidth,
(1 - ((Vector2)hit).Y) * sourceElement.ActualHeight));
VisualTreeHelper.HitTest(sourceElement,
new HitTestFilterCallback(delegate(DependencyObject o)
{
return HitTestFilterBehavior.Continue;
}),
new HitTestResultCallback(delegate(HitTestResult r)
{
UIElement el = r.VisualHit as UIElement;
if (el != null)
{
MouseButtonEventArgs e = new MouseButtonEventArgs(Mouse.PrimaryDevice, 0, MouseButton.Left);
if (leftMouseDown) e.RoutedEvent = Mouse.MouseDownEvent;
else e.RoutedEvent = Mouse.MouseUpEvent;
el.RaiseEvent(e);
}
return HitTestResultBehavior.Continue;
}), p);