【问题标题】:Two-way binding to static property in static class双向绑定到静态类中的静态属性
【发布时间】:2012-10-15 17:38:13
【问题描述】:

这真的不可能吗?我有将单向绑定到静态类中的属性的解决方案,当然我也有将双向绑定到非静态类中的静态属性的解决方案......但是......

我的意思是,解决方法很简单,我可以将我的静态类变成带有静态实例 getter 的单例(请参阅 here),但没有合适的方法吗??

我的班级看起来像这样:

public static class TestClass
{
  public static string TestProp {get; set;}
}

现在请假设我在 setter 中以“正常”方式正确实现了 INotifyPropertyChanged(为简单起见省略)。

XAML 应该如何以双向方式绑定到此属性? 谢谢。

【问题讨论】:

    标签: xaml binding static static-class two-way


    【解决方案1】:

    这个答案可能会有所帮助: wpf static binding question 或这个: Binding to static class property

    简而言之,您的案例如下所示:

    {Binding Source={x:Static whatever:TestClass.TestProperty}, Path=.}
    

    【讨论】:

    • 我认为这不适用于双向绑定 - 尽管我现在没有时间进行测试。我明天测试一下。
    • 这会引发异常“双向绑定需要 Path 或 XPath”。因此,这不是我问题的答案:(
    • 修复了路径。对于那个很抱歉。顺便问一下,如何在静态类中进行属性更改通知?
    • 好吧,实际上我只需要在 gui 中更改值,所以我没有实现属性更改。现在当你问的时候,这也不是那么容易。但是,您的修复 (Path=.) 允许项目编译,但在 gui 中所做的更改仍然没有反映在我的数据中...
    猜你喜欢
    • 2014-09-10
    • 2014-01-29
    • 2013-07-22
    • 1970-01-01
    • 2013-08-17
    • 1970-01-01
    • 2021-08-26
    • 2010-10-30
    相关资源
    最近更新 更多