WPF日历:绑定到MVVM命令?

WPF日历:绑定到MVVM命令?,wpf,calendar,Wpf,Calendar,我正在将WPF日历连接到MVVM视图模型。我不知道如何将日期选择和月份更改绑定到MVVM ICommand对象。例如,要处理选定的日期更改,我将在XAML中将哪个对象绑定到视图模型中相应的命令属性 据我所知,我一直在代码隐藏中处理事件。例如,检测日期选择更改的唯一方法似乎是编写SelectedDatesChanged事件处理程序。我可以从事件处理程序调用视图模型中的command属性,如下所示: private void Calendar_SelectedDatesChanged(object

我正在将WPF日历连接到MVVM视图模型。我不知道如何将日期选择和月份更改绑定到MVVM ICommand对象。例如,要处理选定的日期更改,我将在XAML中将哪个对象绑定到视图模型中相应的命令属性

据我所知,我一直在代码隐藏中处理事件。例如,检测日期选择更改的唯一方法似乎是编写SelectedDatesChanged事件处理程序。我可以从事件处理程序调用视图模型中的command属性,如下所示:

private void Calendar_SelectedDatesChanged(object sender, SelectionChangedEventArgs e)
{
    var viewModel = (CalendarViewModel) DataContext;
    viewModel.GetDateNotes.Execute();
}

但我感觉到这种方法有一种代码味道,除非没有更好的方法可用。有人能告诉我如何直接从XAML将WPF日历绑定到MVVM命令吗?有没有比我现在采取的更好的方法?谢谢你的帮助

您的虚拟机中是否会有一个DateTime属性绑定到日历并引发PropertyChanged?如果是这样的话,您不能监视内部更改的属性,或者在setter中编写代码,以便知道视图何时更改了其值吗?

当然可以!我全神贯注于命令中,以至于看不见森林也看不见树木。谢谢