Bitte beurteilen Sie nicht streng, wenn diese Frage zuvor oder indirekt in riesigen Prisma und MVVM Blogs beantwortet wurde. In WPF Implementierung von RelayCommand oder DelegateCommand Klassen gibt es eine solche EventhandlerMVVM (ICommand) in Silverlight
/// <summary>
/// Occurs whenever the state of the application changes such that the result
/// of a call to <see cref="CanExecute"/> may return a different value.
/// </summary>
public event EventHandler CanExecuteChanged
{
add { CommandManager.RequerySuggested += value; }
remove { CommandManager.RequerySuggested -= value; }
}
aber in SL Teilmenge von Namensräumen gibt es keine Befehlsmanager-Klasse. Und hier stecke ich fest. Ich habe noch keinen Workaround dafür in MVVM Adoption für SL gefunden (PRISM ist für mich noch so komplex). Verschiedene einfache HelloWorldMVVM-Apps werden überhaupt nicht behandelt.
Vielen Dank im Voraus und sorry für mein Englisch -)
Ich denke, Sie sind ein bisschen falsch - es gibt Unterstützung von ICommand (möglicherweise begrenzt, aber es existiert und die Klasse ICommand existiert) in Silverlight 2 –
Es ist wahr, dass die 'ICommand'-Schnittstelle in Silverlight definiert ist, aber Es wird nirgends verwendet und die gesamte befehlende Infrastruktur in WPF, die mit dem MVVM-Muster so gut funktioniert, fehlt in Silverlight. –
Danke. Ich dachte, dass ICommand-Präsenz vollständige Unterstützung bedeutet, also habe ich mich geirrt - (Es stellt sich heraus, dass MVVM-Implementierung in SL nicht so einfach ist wie in WPF. Ich habe bisher nur einen Weg gefunden - mit angehängten Eigenschaften und Verhalten dies: http://blogs.southworks.net/jdominguez/2008/08/icommand-for-silverlight-with-attached-behaviors/ oder mit Ready Framework, wo viele der Ereignisse angenommen werden http: // nroute. codeplex.com –