2010-01-28 2 views

Antwort

18

Wenn jemand Ihr Steuerelement verwendet, wird im Allgemeinen der Datenkontext seiner eigenen Ansichtsmodellklasse festgelegt und die Eigenschaften des Steuerelements an das Ansichtsmodell gebunden.

Wenn Sie innerhalb des Steuerelements mit dem Datenkontext herumspielen und darauf vertrauen, dass er auf "this" gesetzt ist, verhindern Sie entweder, dass die Bindung funktioniert, oder Ihre Steuerung funktioniert nicht wie erwartet, weil Sie sich darauf verlassen darauf wird nicht geändert.


Angenommen, Sie haben ein Benutzersteuerelement, das eine Reihe von Untersteuerelementen enthält. Stattdessen können Sie den DataContext für die Untersteuerelemente so einrichten, dass er Ihre Benutzersteuerungsklasse (oder was immer Sie wollten) darstellt. Auf diese Weise können Sie diese Untersteuerelemente an die Eigenschaften Ihres Benutzersteuerelements binden, während Sie gleichzeitig allen Benutzern Ihres Steuerelements erlauben, den Datenkontext auf das Anzeigemodell festzulegen und auch an die Eigenschaften zu binden.

+1

Danke, aber was ist die Alternative? –

+0

@blahblah: Ich habe meine Antwort mit einer Alternative aktualisiert. –

Verwandte Themen