/ / Erzwinge die Aktualisierung des WPF-Steuerelements von View Model - WPF, MVVM, Benutzersteuerelemente, benutzerdefinierte Steuerelemente

Erzwinge das WPF-Steuerelementupdate von View Model - wpf, mvvm, Benutzersteuerelemente, benutzerdefinierte Steuerelemente

Ich entwickle derzeit ein WPF-Steuerelement, das einfach aus Canvas besteht und einige zusätzliche Eigenschaften wie Rasterlinien, Drag & Drop für Kinder usw. enthält.

Ich brauche einen Mechanismus, um einen Teil meiner Leinwand aufzurufenFunktioniert vom Ansichtsmodell aus, das an die Ansicht gebunden ist, die meine Zeichenfläche enthält. Beispielsweise kann die Ansicht meine Zeichenfläche und eine Schaltfläche "Raster anzeigen" enthalten. Wenn der Benutzer auf die Schaltfläche klickt, sollte die Zeichenfläche auf sich selbst malen.

Das Problem besteht darin, dies gemäß dem MVVM-Muster ohne direkten Bezug zur Zeichenfläche im Ansichtsmodell von view zu tun. Was ist die beste Vorgehensweise, um dies zu tun?

Antworten:

0 für die Antwort № 1

UI-bezogene Inhalte können weiterhin in View geschrieben werdenhinter cs datei. Dies bedeutet nicht, dass Sie MVVM verletzt haben. Wenn sich Ansichtsmodelle auf Geschäftslogik beziehen, bezieht sich die Ansicht dahinter auf die Ansichtslogik. Um mehr Kapselung und Wiederverwendbarkeit zu erzielen, können Sie verwenden Verhaltensweisen.

Sie können ein Verhalten schreiben, das die gesamte Zeichenlogik ausführt, und es an die Schaltfläche anhängen. Sogar Sie können Ihrem Verhalten Abhängigkeitseigenschaften hinzufügen, um mehr Kontrolle darüber zu haben.