間違った方法を尋ねる代わりに、あなたが必要とするものに答えようとします
「プロパティが変更されただけの場合、DB 値が更新されないか、重複が作成されます」
プロパティset
terset { if (this.someMember != value)
で、入力した値が変更されているかどうかを確認する必要があります。
public event PropertyChangedEventHandler PropertyChanged;
private string someMember;
public int SomeProperty
{
get
{ return this.someMember; }
set
{
if (this.someMember != value)
{
someMember = value;
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("SomeProperty"));
}
}
}
余談ですが (またはトピック外)、最後の WPF 記事
の codeproject DataContext が役立つ場合があります。ソース コードには、1 つの VisualModel のプロパティの更新が反映されたときのサンプルがあります (他の VM のプロパティの更新と同期されます)。
起動直後:
1 番目のテキスト ボックスに入力されたテキストは 2 番目のテキスト ボックスに反映され、2 番目のテキスト ボックスに入力されたテキストは 1 番目のテキスト ボックスに反映されます。
3D テキスト ボックスに入力されたテキストは 4 番目のテキスト ボックス (および下部のテキスト ブロック コンテンツ) に反映され、逆に、4 番目のテキスト ボックスに入力されたテキストは 3D (および下部のテキスト ブロック コンテンツ) に反映されます。
ダウンロードはDataCotext Inner Objects.zip
、名前の付いたディレクトリとソリューションに解凍されることに注意してくださいBindingtoclassesstate