WPFの場合:
誰かがDependencyPropertyとデータバインディングの関係を説明できますか?
コードの背後にプロパティがあり、データバインディングのソースになりたいです。このオブジェクトをXAMLのテキストボックスにバインドする場合、DependencyPropertyはいつ機能しますか(または機能しますか)。
WPFの場合:
誰かがDependencyPropertyとデータバインディングの関係を説明できますか?
コードの背後にプロパティがあり、データバインディングのソースになりたいです。このオブジェクトをXAMLのテキストボックスにバインドする場合、DependencyPropertyはいつ機能しますか(または機能しますか)。
バインディングのターゲットは常にである必要がありますがDependencyProperty
、任意のプロパティ(プレーンプロパティも含む)をソースにすることができます。
プレーンプロパティの問題は、バインディングが値を取得するのは1回だけであり、変更通知がプレーンソースプロパティにないため、その後は変更されないことです。
変更通知を作成せずに提供するにはDependencyProperty
、次のことができます。
INotifyPropertyChanged
プロパティを定義するクラスに実装します。
イベントを作成します。(下位互換性。)PropertyName
Changed
WPFは、最初の選択肢でより適切に機能します。
DependencyPropertyクラスは、.Net Framework WPF の奥深くに隠されている最も重要な設計ベースの 1 つです。
このクラスはsealed
、.NET Framework によって保護されています。このプロパティは、フィールド値を格納するだけでなく、クラス内で提供されるさまざまな関数を利用するという点で、1 次元の一般プロパティとは異なります。最も重要なことは、データ バインディングの完全な基盤があることです。何かをバインドするたびに通知を送信することもできます。
DependencyProperty
Wpf Xaml バインディング
回答が遅くなりましたが、私の研究成果を紹介します。