如何从Winform的Button调用WPF命令?

时间:2012-06-22 18:23:31

标签: c# wpf winforms

我正在使用winform并通过ElementHost合并wpf。

如何从Winforms按钮的点击事件中调用WPF ICommand?这些对我来说都是新的,所以请耐心等待这些问题。

我目前的代码是

CarView car = (CarView) CarHost.Child;         
CarViewModel cvm = (CarViewModel) car.DataContext;
cvm.SaveCommand.Execute(null);

通过这样做,我可以调用SaveCommand,但我没有得到任何数据。

提前致谢。

1 个答案:

答案 0 :(得分:2)

我可能在这里遗漏了一些东西。通常你会做类似的事情:

<Button Command="{Binding MyCommand}" />

然后当有人点击按钮时,会调用MyCommand的Execute方法。

我想,从代码隐藏中,你可以调用:

private void OnClick(object sender, RoutedEventArgs e)
{
    if (MyCommand.CanExecute(null))
        MyCommand.Execute(null);
}

但除了非常具体的情况(你没有提到),我不确定你为什么这样做。我想你肯定需要再给我们一些信息。