Hallo,
vielen herzlichen Dank für deine ausführliche Antwort. Wie immer hast du dir viel Zeit genommen, um meine Fragen zu beantworten.
Es ist mir klar, dass in ProductViewModel:
public ICommand GetProductCommand
{
get
{
if (_getProductCommand == null)
{
_getProductCommand = new RelayCommand(param => GetProduct(), param => ProductId > 0);
}
return _getProductCommand;
}
}
die Methode GetProduct() und der boolsche Wert ProductId > 0 als Parameter an der RelayCommand-Konstruktor übergeben und in die Variablen _execute und _canExecute gespeicher werden. Werden diese in Execute und CanExecute:
public bool CanExecute(object parameters)
{
return _canExecute == null ? true : _canExecute(parameters);
}
public void Execute(object parameters)
{
_execute(parameters);
}
ausgeführt? _canExecute ist kann doch nur true oder false sein. Welche Rolle spielt an dieser Stelle der Parameter "parameters"? Ist das eine Übergabeparameter an die GetProduct()? Ich verstehe das nicht ganz.
Das ist klar. Ich kann sofort mit "MVVM Light" oder "Prism" anfangen. Ich gehe davon aber aus, dass meine Probleme da erheblich größer werden, wenn ich die Zusammenhänge nicht versetehe, die z.B. in diesem Beispiel zum Tragen kommen. Daher möchte ich zunächst mal dieses Beispiel mehr oder weniger verstehen, bevor ich mit etwas anderem anfange.
Kennst du eventuell ein MVVM Beispiel, in dem auch die Handhabung mit den Menüs (in der Menüleiste meine ich) behandelt werden?
Danke im Voraus.