我对Winforms中对DataSources的理解有点困惑,并且希望有人可以为我清理一些东西。
我有一个控件,让我们称之为Host,我还有一个名为Client。
“主机”包含多个“客户端”实例
客户端在标签中显示四个主要变量,每个变量绑定到每个控件的BindingSource。
我正在使用LINQ检索的数据库值从Host控件更新这些BindingSource。
当我从“主机”控件更新BindingSource时,“客户端”控件中的值不会像我预期的那样进行控制。
任何人都可以快速解释一下我需要调用的任何方法,以确保每次更改BindingSource时标签都会刷新最新数据吗?
此致
答案 0 :(得分:1)
您必须实施INotifyPropertyChanged
界面。
INotifyPropertyChanged接口用于通知客户端(通常是绑定客户端)属性值已更改。
public class MyClass : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(String info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
private string myProperty;
public string MyProperty
{
get
{
return this.myProperty;
}
set
{
if (value != this.myProperty)
{
this.myProperty = value;
NotifyPropertyChanged("MyProperty");
}
}
}
}