Я пытаюсь использовать шаблон mvvm. При использовании galasoft EventToCommand я получаю то следующее сообщение об ошибке: The лучший перегруженный матч метод для «GalaSoft.MvvmLight.Command.RelayCommand.RelayCommand (System.Action)» имеет некоторые недопустимые аргументы ...MVVM-light и Windows Phone Toolkit - RelayCommand <DateTimeValueChangedEventArgs> сбой
код из моего XAML :
<toolkit:DatePicker Header="Select Date"
ValueStringFormat="{}{0:D}"
HorizontalAlignment="Left" Margin="0,126,0,0"
Name="datePicker1"
VerticalAlignment="Top" FontFamily="Verdana"
FontSize="22" Width="450">
<i:Interaction.Triggers>
<i:EventTrigger EventName="ValueChanged">
<cmd:EventToCommand PassEventArgsToCommand="True"
Command="{Binding DateSelection}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</toolkit:DatePicker>
В видовом:
public MainViewModel()
{
DateSelection = new RelayCommand<DateTimeValueChangedEventArgs>(time_Call);
}
public RelayCommand<DateTimeValueChangedEventArgs> DateSelection
{
get;
set;
}
void time_Call(object sender, DateTimeValueChangedEventArgs e)
{
}
Я пуст!
Я правильно мог установить его с DataBinding. Но при использовании инструментария я связан с представлением - так, используя «это». чтобы получить доступ к объектной форме View wont work. После некоторой отладки времени я узнал, что мне не хватает. Мне нужно вызвать метод time_Call и использовать делегат. Решение состояло в том, чтобы использовать Lambda для создания делегата: (e => «Мой метод»). Однако мне не нравится этот синтаксис, я нахожу его неявным. –