我有一个绑定到WPF MenuItem ItemsSource
的Item-Objects集合public class Item
{
public string Name
public ?? MethodToCall
}
现在我想使用我的点击事件(我可能会使用RelayCommand)来调用MethodToCall
,即void
。那么我应该使用??
对象中的Item
类型是什么?在RelayCommand中应该有什么?只是Item.MethodToCall()
?我不想使用任何case
或其他东西,因为我希望能够动态地将项添加到MenuItem
并在相应的对象中定义我的方法。
谢谢你的帮助。
答案 0 :(得分:0)
这是调用方法的relay命令的样子:
private bool _canExecuteMyCommand = true;
public RelayCommand YourCommand
{
get;
private set;
}
public MainViewModel()
{
MyCommand = new RelayCommand( MethodToCall, () => _canExecuteMyCommand);
}
private void MethodToCall()
{
// Do something
}
_canExecuteMyCommand
决定何时执行命令。即调用MethodToCall
函数时。如果为false,则不调用该函数。
编辑:
您可以在类中拥有多个中继命令,即Item
类中的如下:
public class Item
{
public string Name
public RelayCommand YourCommand1
{
get;
private set;
}
public RelayCommand YourCommand2
{
get;
private set;
}
}