我想实现静态类实例中绑定到财产
我有一个WPF应用程序(它只是用于测试),我想一个标签的文本(内容)的绑定财产某处。这个想法是,当用户选择不同的语言时,这个属性值将被改变。当属性发生变化时,我想用新值更新标签文本。
我已经试过
我试图创建一个静态类,静态属性的标签值。例如:
public static class Language
{
public static string Name = "Name";
}
然后我能够使用XAML这个值来我的标签绑定像这样:
Content="{Binding Source={x:Static lang:Language.Name}}"
这工作得很好的显示“姓名”的初始值。问题是,当Name
属性更改时,标签值不会更改。
所以,回到制图板(谷歌)。然后我发现this answer听起来完全像我所需要的。因此,这里是我在这个新的尝试:
public class Language
{
public static Language Instance { get; private set; }
static Language() { Instance = new Language(); }
private Language() { }
private string name = "Name";
public string Name { get { return name; } set { name = value; } }
}
与我结合改成了这样:
Content="{Binding Source={x:Static lang:Language.Instance}, Path=Name}"
这仍然导致了同样的问题。
问题
缺少什么我在这里?如何在更改值时更新标签?
绑定引擎的工作原理与性能。所有代码示例都包含*一个字段*名称,而不是*属性*。 – Dennis