2009-03-08 11 views
0

Ich habe eine Frage zu einer ComboBox in silverlight und dem ausgewählten Artikel.Wie ermittele ich die Quelle des SelectionChangedEvent

Ich möchte ermitteln, was das SelectionChangedEvent ausgelöst hat, war es der Benutzer, der ein neues Element in der Liste auswählte oder wurde es programmgesteuert festgelegt?

Während idealerweise würde Ich mag diese die CommandPattern mit lösen (I im Wesentlichen ein modifiziertes RelayCommand bin mit (http://joshsmithonwpf.wordpress.com/2008/11/17/emulating-icommandsource-in-silverlight-2/). Ich bin offen für andere Vorschläge.

ich auch mit dem SelectionChangedEventArgs um gespielt habe, der eine der OriginalSource Eigenschaft, die bei der ersten Prüfung erscheinen kann jedoch zu helfen, es Ideen, andere als die Einstellung ein internes Flag? :)

Dank (unabhängig von der Art und Weise, in dem das Element ausgewählt.)

null ist

Antwort

0

Leider ist das eine schwierige Sache zu bestimmen, da das Framework ziemlich hart arbeitet, um alle Änderungen oder Benutzerereignisse in dieser Situation einfach zu verpuffen, da diese Auswahl das Ereignis änderte.

Wenn Sie wirklich brauchen, könnten Sie einen einfachen ComboBoxWrapper schreiben, der tatsächlich das Flag ist, von dem Sie sprechen - also können Sie von ComboBox ableiten, versuchen, den CLR-Setter für SelectedItem zu überschreiben oder zu verbergen und den Zustand auf diese Weise beizubehalten .

Irgendein bestimmtes Szenario hier verwendet? Es kann einen anderen Weg geben, sich einer Lösung zu nähern.

Verwandte Themen