WPF窗口标题与数据绑定和常量字符串

4

我有一个描述文本框,我想在窗口标题中添加一些常量文本,例如“Description: ”+Description。

我最初的方法是创建一个新属性,该属性使用常量字符串返回Description的值。问题是我没有获得PropertyChanged事件,因此窗口标题不会刷新。我正在考虑在Description的setter上创建一个事件,但我认为这太丑陋了。

你能帮我解决吗?

3个回答

12

使用Binding时,请查看StringFormat

Title="{Binding Path=Description, StringFormat=Description: {0}}"

如果你有一个文本框并且想要使用它的文本内容,它的使用方式与其他控件相同。给文本框取个名字,然后在使用时通过ElementName属性引用。

Title="{Binding ElementName=myText, Path=Text, StringFormat=Description: {0}}"

1

您可以使用DataBinding轻松实现此操作

在ViewModel/DataContext中创建一个Description字段,并使用StringFormat

Title = "{Binding Path=Description,Mode=OneWay, StringFormat = Description: {0}}" 

0

在描述的setter上创建事件是标准做法。使用INotifyPropertyChanged接口的PropertyChanged事件。


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