WPF - 绑定同一控件的属性

13

我有一个控件(比如一个文本框),我想将其中一个属性的值(比如工具提示)绑定到同一控件中另一个属性的值(比如文本)。

我希望像下面这样做,但我不知道如何将工具提示绑定到同一控件的文本:

<textBox text="abc" tooltip={Binding ???} />
2个回答

37

使用RelativeSource:

<TextBox Text="abc" ToolTip="{Binding RelativeSource={RelativeSource Mode=Self}, Path=Text}" />

1

如果您使用MVVM模式,您可以在ViewModel上公开一个属性,然后将其绑定到相同的属性:

<textBox text="{Binding Text}" tooltip="{Binding Text}" />

在ViewModel中:

public string Text { get return "abc"; }

这可以让您对所呈现的值进行单元测试,以确保其正确无误。


虽然有点偏离他所问的问题,但我是一个MVVM的粉丝 :) - Tomer W

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接