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();