0

から継承するコントロールがあるとしますUserControl(したがって、そのスーパークラスの1つはですDependencyObject)。DependencyProperty少しの実装が必要なため、を使用して通知の問題を解決するのは非常に簡単ですINotifyPropertyChanged。他のオプションは、コントロールの状態を変更するメソッドを作成することです(のようにmyControl.HideTextBox())。これを解決するためのオプションは他にもいくつかあると思いますが、コントロールはすでにから継承しDependencyObjectDependencyPropertyいるため、より明白な方法のようですが、最適ではない可能性があります。

何か考えはありますか?

ありがとう!

4

1 に答える 1

4

依存関係プロパティの本当の機能は、変更通知を無料で受け取ることではありません(ただし、それはあります)。実際の機能は、依存関係プロパティのみがデータバインディングのターゲットになることができるということです。これは、プロパティを依存関係にするかどうかを決定する際に、何よりもまず考慮すべきことです。

コントロールの場合、ほとんどすべてのプロパティがバインド可能である必要があり、したがって依存関係があります。

于 2009-07-29T22:38:02.983 に答える