Programmgesteuertes Ändern des WPF-Rechteckstils (MVVM) (Noob)

8

[EDIT] * Ich hatte vergessen, die zurückgegebene Ausnahme einzufügen

'System.Windows.Style' is not a valid value for property 'Fill' *

Dies ist mein erster Beitrag, ich habe bereits viele Fragen gestellt, wo dies vielleicht schon erfolglos beantwortet wurde. Ich bin ein kompletter Anfänger, wenn es um MVVM, Prism und WPF geht, und ich bin auf diesem einen Punkt in die Tiefe geworfen worden.

Ich möchte den Inhalt von zwei Rechtecken abhängig von einem booleschen Wert im Modell ändern (Binding Passed).

Wenn ein Test Pass (bool True) zurückgibt, wird die Farbe Grün für das erste Rechteck angezeigt und das zweite Rechteck zeigt den UserControl.Resource Style x: Key="RectanglePass" an. Wenn der Test fehlschlägt, ist das erste Rechteck rot und das zweite zeigt UserControl.Resource Style x: Key="RectangleFail"

an

Ich habe den folgenden xaml-Code:

%Vor%

Das obige funktioniert nicht und gibt eine Ausnahme zurück. Wenn ich das zweite Rectangle-Tag (rectStatusImg) durch diese Zeile ersetzen sollte:

%Vor%

Der XAML funktioniert und produziert das erwartete Ergebnis! Aber ich möchte es an den Boolean Passed binden, damit ich es programmatisch ändern kann.

Ich hoffe wirklich, dass ich mein Problem hier erklären konnte.

Vielen Dank für Ihre Hilfe im Voraus, diese Seite war immer ein Schatz und eine große Hilfe.

Prost, Simon

    
sayo9394 19.12.2012, 03:31
quelle

1 Antwort

7

Definieren Sie zwei visuelle Pinsel in Ihrer Ressource und erstellen Sie einen Rechteckstil mit Datenauslösern wie

%Vor%

und benutze es in einem Rechteck wie

%Vor%

Ich hoffe, es hilft.

    
D J 19.12.2012, 04:03
quelle

Tags und Links