WPF:直接绑定到控件
我需要将UserControl
的属性直接绑定到另一个控件,而不是该控件上的任何特定属性。达到此目的的最佳方式是什么?我试过Binding
属性的各种组合无济于事。WPF:直接绑定到控件
对于某些情况下,UserControl
具有Next
属性,该属性指定导航层次结构中的下一个控件;它与TabIndex
类似,但对于上下文敏感的导航。
<c:MyControl x:Name="First" Next="{Binding ???}" />
<c:MyControl x:Name="Second" />
从阅读的文档,我认为我应该已经能够做到:{Binding Source=Second, BindsDirectlyToSource=True}
,但没有奏效。
的ElementName属性是你的friend
我曾尝试'ElementName'没有任何成功,但经过一些进一步的调查后,它结束了它工作正常,但我怎么调试它是错误的。我的重写事件被称为“Second”,但没有意识到,所以'Next'总是空。一旦我意识到这一点,并得到了与“First”相关的事件,该物业已经成立。 – 2009-11-07 12:18:08
不错,简洁。 – 2009-11-07 20:54:20
ArildF的回答{绑定的ElementName =二}是最好直接回答你的问题,但你有没有考虑过使用WPF的内置导航功能?
<c:MyControl x:Name="First" KeyboardNavigation.TabIndex="1" />
<c:MyControl x:Name="Second" KeyboardNavigation.TabIndex="2" />
还检查了:
KeyboardNavigationMode枚举
KeyboardNavigation.DirectionalNavigation/TabNavigation/ControlNavigation
KeyboardNavigation.IsTabStop
我们荷兰国际集团<电网>代替< DockPanel中>,以保持控制在自然秩序
这可能是你想要的功能已经被WPF覆盖。
谢谢你的建议雷,当然对于这个例子来说,使用你所说的会更好;然而,我的例子是设计过于简单化。 – 2009-11-08 11:24:14
绑定到父项,使用'Path = Second'如何? – 2009-11-07 11:27:37