通知依赖项属性更改其观察者

时间:2011-07-18 16:18:43

标签: data-binding notifications

我在xaml中有以下内容。

<TextBlock Text="{Binding Title}" />

并创建了以下依赖项属性

public string Title
        {
            get { return (string)GetValue(TitleProperty); }
            set
            {
                SetValue(TitleProperty, value);

                if (PropertyChanged != null)
                {
                    PropertyChanged(this, new PropertyChangedEventArgs("Title"));
                }
            }
        }

        public static readonly DependencyProperty TitleProperty =
            DependencyProperty.Register("Title", typeof(string), typeof(ColumnChart), new PropertyMetadata(string.Empty));

现在,如果我绑定其他xaml中的T​​itle属性,则不会获取该值。因为未调用PropertyChange通知。并且PropertyChanged始终为null。

如何通知观察者列表此属性已更改,以便更新该值。

1 个答案:

答案 0 :(得分:0)

我不太清楚你的意思是“我如何通知观察者列表这个属性已被更改,以便更新该值。”

这看起来像一个用户控件,因为在视图模型中使用依赖项属性并不常见。因此,请查看Routed Events。依赖项属性的Register()方法具有覆盖,该覆盖将采用将在属性更改时调用的处理程序。您可以从此处理程序中调用自定义路由事件。用户控件的使用者可以使用标准机制订阅此路由事件。