RelayCommand not executing
本文关键字:executing not RelayCommand | 更新日期: 2023-09-27 18:19:40
我正试图使用Galasoft MVVMLight的RelayCommand执行RelayCommand[它在我的CodeBehind中]。
主页.xaml.cs
public MainPage()
{
InitializeComponent();
DataContext = this;
MyCommand = new RelayCommand(Methode);
}
#region Commands
public RelayCommand MyCommand { get; private set; }
#endregion
private void Methode()
{
int i = 1;
}
主页.xaml:
<Button Command="{Binding MyCommand}"/>
不幸的是,该命令没有被激发/该方法没有被调用。其他绑定元素,如ImageSource。。。运行良好。
在设置DataContext
之前尝试创建新的RelayCommand
。
设置DataContext
会触发数据绑定引擎更新绑定。由于尚未设置MyCommand
属性,因此Button
的Command
将为null。在设置DataContext
之后创建新的RelayCommand
将不会通知Button
属性的更新。
在设置DataContext
之前创建Command
是一种解决方案,另一种是实现INotifyPropertyChanged
接口,并在设置MyCommand
之后引发PropertyChanged
事件(或者在setter中,需要一个backing字段)。