SelectionChanged-event binding in Silverlight+MVVM-Light
Den handler des "SelectionChanged" - event der ComboBox-Steuerelement verfügt über die folgende Signatur:
void SelectionChangedMethod(object sender, SelectionChangedEventArgs e)
Wie zu binden, diese Eigenschaft in Silverlight 4 und MVVM-Licht, um die entsprechende Methode der ViewModel-Objekt?
Soweit ich weiß, brauche ich etwas wie das hier tun:
public void Changed(Object obj, SelectionChangedEventArgs e)
{
//.... implement logic here
}
RelayCommand<Object, SelectionChangedEventArgs> _command;
public ICommand ObjectSelectionChanged
{
get
{
if (_command == null)
{
_command = new RelayCommand<Object, SelectionChangedEventArgs>(Changed);
}
return _command;
}
}
Das problem ist, dass die RelayCommand-Klasse im MVVM-Light-framework nicht unterstützt 2 generische Parameter...
Gibt es eine Lösung oder einen workaround für diesen Fall? Wie binden control-Ereignis an die Methode mit 2 Parametern?
Und ein weiteres problem: ComboBox nicht "Command" - Eigenschaft binden dieser Befehl..? Wie kann ich get-Ereignis aus dem ViewModel?
Dank.
P. S. ich habe versucht, verwenden Sie die SelectedItem-Eigenschaft des combobox -, aber wie es scheint, ComboBox, in der Umsetzung ist nicht richtig, und es funktioniert nicht...
InformationsquelleAutor Budda | 2010-05-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist ein viel einfacher Ansatz, dann versuchen zu verbinden, die SelectedChangedEvent.
Versuchen...
Ist es möglich, Mach es so wie du wolltest
Sollte der Befehl sein, eine RelayCommand des Typs 'SelectionChangedEventArgs'
Wow, der erste Ansatz ist genial! Vielen Dank!
InformationsquelleAutor Agies