Интересно, смогу ли я создать RelayCommand в моей ViewModel следующим образом:
public RelayCommand<IList<VectorViewModel>> MyCommand { get; set; }
ctor:
MyCommand = new RelayCommand<IList<VectorViewModel>>(DoSomething);
А из кода XAML я получаю выбранные строки изDataGrid и поместите их в список.
if (xamDatagridVector.SelectedItems.Records.Count >= 3)
{
var list = new List<VectorViewModel>();
foreach (DataRecord record in xamDatagridVector.SelectedItems.Records)
{
list.Add((VectorViewModel)record.DataItem);
}
}
На этом этапе я хотел бы отправить список обратно в ViewModel с помощью той команды RelayCommand, которую я создал ранее.Возможно ли создать RelayCommand в коде и связать его с командой ViewModel и запустить его?
Какой альтернативный способ существует?Конечно, я мог бы использовать класс Messenger со слабой ссылкой в MVVM-Light, но мне не нравится, что он будет отправлять его всем абонентам этого вызова, а не только базовому ViewModel (его использование Messenger смертельно опасно, если у вас несколькоэкземпляры одного и того же представления в TabControls)
Надеюсь, у кого-то есть идея поддержать меня, Большое спасибо, Каве