我有一个控件(让我们说一个文本框),我希望将一个属性的值(比如工具提示)绑定到同一控件中的另一个属性的值(让我们说文本)。
我想要像下面这样的东西,但我不知道如何将工具提示绑定到同一控件的文本:
<textBox text="abc" tooltip={Binding ???} />
答案 0 :(得分:30)
使用RelativeSource:
<TextBox Text="abc" ToolTip="{Binding RelativeSource={RelativeSource Mode=Self}, Path=Text}" />
答案 1 :(得分:1)
如果使用MVVM模式,则可以在ViewModel上公开属性,然后将它们绑定到同一属性:
<textBox text="{Binding Text}" tooltip="{Binding Text}" />
在ViewModel中:
public string Text { get return "abc"; }
这允许您对显示的值进行单元测试。