技術:.NET 4、C#の、WinFormsのは、Visual Studio 2010の単純な結合の.NETデータバインディング機能していない
私はバインディング学習データの処理にいると仕事にも、簡単な例を得ることができませんでした予想通り。私は現在のマウスカーソルの座標を示すためにバインドしているラベルを持つフォームを持っています。
public partial class Form1 : Form, INotifyPropertyChanged
{
[Bindable(true)]
private String cursorPosition;
public String CursorPosition
{
get
{
return cursorPosition;
}
set
{
cursorPosition = value;
NotifyPropertyChanged("CursorPosition");
}
}
public event PropertyChangedEventHandler PropertyChanged;
public Form1()
{
InitializeComponent();
}
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
CursorPosition = "(" + Convert.ToString(e.X) + " , " + Convert.ToString(e.Y) + ")";
}
private void NotifyPropertyChanged(String propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
デザイナーから、Textプロパティをform1BindingSource-CursorPositionにバインドするためのラベルのデータバインディングを設定しました。私は何が欠けていますか?
編集:更新されたコードスニペット。
ありがとう! 'DataSource'を設定しないのは、私が行方不明になっていたものであり、ドキュメントを見ても覚えていません。私はノンビューコードをあなたが示唆したように適切なコントローラにリファクタリングしました。私はあなたの新しいセッターとNotifyPropertyChangedメソッドがはるかに優れていることに同意します。 – Noren