Isa*_*avo 1 c# wpf routed-events pixelsense
我正在努力使用MS Surface项目上的TagVisualizer控件.理论上,控制似乎很棒,允许您响应来自现实世界物理对象的输入
问题是控件将覆盖整个屏幕(因为我想在整个屏幕上捕获标签),因此,我的应用程序中没有其他控件将接收触摸事件.(除非,它们是视觉树中的直接上升者).
在我的应用程序中,我希望有一种"层"类型的方法,其中每个层都可以响应(联系)输入:
Window
`- Grid
`- LayersPanel
`- TagVisualizer
`- Layer 1
`- Layer 2
`- Layer 3
`- Layer 4
Run Code Online (Sandbox Code Playgroud)
现在我把标签可视化器放在哪里并不重要,它总是会窃取来自所有或其他层的联系事件.(由于RoutedEvents的性质)
对我而言,控件在实践中似乎完全没用,因为它总会干扰应用程序的其他控件.我在这里错过了什么?
所以我的问题是:关于如何解决这个问题的任何建议?有没有人在类似的场景中使用TagVisualizers?如果是这样,你是如何解决这个问题的?
顺便说一下,这些层都可以正常工作,因为它们只会窃取直接位于其子元素之上的事件(图层的其余部分对于命中测试是不可见的)
使用TagVisualizer时,诀窍在于您必须将整个应用程序放在其中.例如:
<s:TagVisualizer>
<s:TagVisualizer.Definitions>
<s:ByteTagVisualizationDefinition Value="00" />
</s:TagVisualizer.Definitions>
<s:ScatterView>
<s:ScatterViewItem />
<s:ScatterViewItem />
<s:ScatterViewItem />
<s:ScatterViewItem />
</s:ScatterView>
</s:TagVisualizer>
Run Code Online (Sandbox Code Playgroud)