2014-09-11 87 views
-1

这是我的XML代码通知属性更改不工作

<TextBlock Grid.Column="0" Tag="{Binding id,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Text="{Binding Name,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/> 

这是我的模型

public string _Name; 
public string Name 
{ 
    get { return _Name; } 
    set { _Name = value; RaisePropertyChanged("Name"); } 
}  

当我设置值这两个propertie即。以标识和名称

,但它不是对通知名称...

+0

你忘了设置this.DataContext?这真的不是一个模型,它只是一个属性:) – 2014-09-11 05:35:54

+0

哦是啊!!其财产.. – user3502966 2014-09-11 05:47:52

+0

我也设置datacontext,仍然不工作:( – user3502966 2014-09-11 05:48:34

回答

0

简单数据绑定实例与更新。您可以使用此作为参考,让你开始:)

public partial class MainWindow : Window, INotifyPropertyChanged 
{ 
    // implement the INotify 
    public event PropertyChangedEventHandler PropertyChanged; 
    private void NotifyPropertyChanged(String propertyName) 
    { 
     PropertyChangedEventHandler handler = PropertyChanged; 
     if (null != handler) 
     { 
      handler(this, new PropertyChangedEventArgs(propertyName)); 
     } 
    } 

    private string _mytext; 
    public String MyText 
    { 
     get { return _mytext; } 
     set { _mytext = value; NotifyPropertyChanged("MyText"); } 
    } 

    public MainWindow() 
    { 
     InitializeComponent(); 
    } 

    private void Window_Loaded(object sender, RoutedEventArgs e) 
    { 
     this.DataContext = this;    // set the datacontext to itself :) 
     MyText = "Change Me"; 
    } 
} 

<TextBlock Text="{Binding MyText}" Foreground="White" Background="Black"></TextBlock> 
+0

我解决了它..我刚刚使用另一个集合,它的工作.. – user3502966 2014-09-11 06:20:31

+0

令人震惊不知道为什么发生这种情况..previous收集声明correctoly – user3502966 2014-09-11 06:21:47

+0

真棒,寻找错误可能会一个有价值的冒险。祝你好运:) – 2014-09-11 06:50:26