2009-07-29 7 views
0

Angenommen, ich habe ein Steuerelement, das von UserControl erbt (daher ist eine seiner Superklassen DependencyObject). Es ist sehr einfach, ein Problem mit einer DependencyProperty zu lösen, da INotifyPropertyChanged eine kleine Implementierung benötigt, und die andere Option wäre eine Methode zum Ändern des Status des Steuerelements (wie myControl.HideTextBox()) zu erstellen. Ich denke, es gibt mehrere Optionen, um dies zu lösen, aber da das Steuerelement bereits von DependencyObject erbt, scheint ein DependencyProperty der offensichtlichere Weg zu sein, aber es könnte nicht optimal sein.Kosten der Verwendung von Abhängigkeitseigenschaften

Irgendwelche Gedanken?

Danke!

Antwort

4

Das eigentliche Merkmal der Abhängigkeitseigenschaften ist nicht, dass Sie die Änderungsbenachrichtigung kostenlos erhalten (obwohl das dort ist). Das eigentliche Merkmal ist, dass nur Abhängigkeitseigenschaften Ziele der Datenbindung sein können. Das sollten Sie in erster Linie berücksichtigen, wenn Sie entscheiden, ob eine Immobilie abhängig sein soll oder nicht.

Für ein Steuerelement sollten fast alle Eigenschaften bindbar sein, und damit Abhängigkeit.

+0

Also bin ich irgendwie verwirrt. Sie haben gesagt, dass das nicht das eigentliche Merkmal der DependencyProperties ist, aber Sie sagten, dass fast alle Eigenschaften bindbar sein sollten, also Abhängigkeit. Ist es gut, sie für mein Beispiel zu verwenden oder nicht? – Carlo

+0

Siehe den zweiten Absatz meiner Antwort. Ich kann nicht viel mehr sagen, es sei denn, du erzählst mehr über deine Kontrolle und die Eigenschaft, über die du zweifelst. Ich würde auch empfehlen, auf WPF-Bestandskontrollen zu schauen, um zu sehen, welche ihrer Eigenschaften Abhängigkeiten sind (Sie werden feststellen, dass es fast alle sind). –

Verwandte Themen