2015-03-25 42 views
0

我正在審閱this stack overflow post並對其進行了測試,並且按預期工作。但是,我注意到一旦我分配一個新的對象到本地變量的綁定不再起作用。數據綁定到C#中的對象 - 新對象/新實例/作業

我有2個問題:

1)必須有一個更好的辦法,我無法想象,通過和修改我的所有屬性,並從簡單的1行代碼public string Title2 { get; set; }改變一些冗長的getter /調用某種方法的setter屬性。

2)我每次創建對象的新實例時都必須重新綁定嗎?

用戶窗體

MyClass myClass; 
textbox1.DataBindings.Add("Text", this.myClass, "MyName"); 

對象

public class MyClass : INotifyPropertyChanged 
{ 
    private string _myName; 

    public string MyName 
    { 
     get { return _myName; } 
     set 
     { 
      if(_myName != value) 
      { 
       _myName = value; 
       OnPropertyChanged("MyName"); 
      } 
     } 
    } 

    public event PropertyChangedEventHandler PropertyChanged; 

    private void OnPropertyChanged(string propertyName) 
    { 
     if(PropertyChanged != null) 
      PropertyChanged(this , new PropertyChangedEventArgs(propertyName)); 
    }  
} 

但是當你在窗體創建MyClass的一個新的實例作爲不久,綁定不再工作...

myClass = new MyClass(); 

回答

0

那就是e xactly它應該如何工作......綁定仍然在工作,但是在類的前一個實例中,是的,每次創建新對象時都會重新綁定。

相關問題