Ich habe ein bisschen eine Sackgasse in versucht, diese herauszufinden ... Verwenden Sie das MVVM-Muster in WPF, unser C# -Modell feuert ein Ereignis ab, um zu sagen, dass etwas passiert ist. Ich möchte in der Lage sein, dieses Ereignis in meinem ViewModel zu behandeln und dann entweder ein Storyboard zu kicken oder die Sichtbarkeit eines versteckten Panels auf der aktuellen Xaml-Seite zu ändern. Dies muss ohne Code behangen werden.WPF: Wie handle ich ein Ereignis von einem Modell zur dynamischen Aktualisierung XAML in MVVM
Ich kann für das Ereignis in meinem ViewModel synchronisieren, eine Eigenschaft aktualisieren, um zu sagen, wie der Name des Ereignisses lautet, und eine NotifyPropertyChanged auslösen, aber wie bekomme ich das, um ein Storyboard zu starten oder zu einem Boolean zu true/false in der Visibility-Eigenschaft meines Grids? Die Eigenschaft, die ich an hs anschließe, um der Ereignisname zu sein, da verschiedene Grids basierend auf verschiedenen Ereignissen gezeigt werden können, so dass ich eine Art der Zuordnung zu einem booleschen Wert benötige. Die ideale Lösung wäre jedoch, ein Storyboard zu starten. Ich habe DataTriggers betrachtet, aber sie scheinen alle mit Stilen verknüpft zu sein und nicht mit tatsächlichen Seiten.
Irgendwelche Ideen, wie ich das erreichen kann?
Danke!
Danke für die Antwort Dave - wirklich zu schätzen! Problem ist, dass diese Eigenschaft kein Bool ist. Es ist eine Schnur. Im Grunde gibt es eine ganze Reihe von Ereignissen, die auftreten können (hunderte tatsächlich!), Also denke ich eher an die Zeilen, diese etwas zu tippen und den Xaml irgendeine Art von tun zu lassen: also der Ausdruck wird als wahr ausgewertet und dies setzt die Sichtbarkeit auf wahr ... –
Slippy
Sichtbarkeit hat 3 mögliche Werte, Sie benötigen einen Konverter, um es an einen Booleschen Wert zu binden und wählen Sie, was wahr/falsch ist bedeutet für Collapsed/Versteckt/Sichtbar. – Matthieu
Prost Matthieu - Ich hatte gehofft, einen Konverter zu vermeiden, da ich eine endlose unbegrenzte Liste von Ereignissen habe. Ich denke, Konverter müssen verwendet werden, wenn Sie eine Expression Evaluation durchführen wollen? – Slippy