当我使用 Command
在 Button
控制加入 Click
的事件处理程序事件永远不会引发,
我如何使用 Command
并处理 Click
事件处理程序?
最佳答案
您可以将 ICommand 附加到另一个属性并从 Click 处理程序执行它。
<Button x:Name="MyButton" Tag="{x:Static ApplicationCommands.Stop}" Click="MyButton_Click" />
并在处理程序中:
private void MyButton_Click(object sender, RoutedEventArgs e)
{
var button = sender as Button;
if (button != null)
{
var command = button.Tag as ICommand;
if (command != null)
command.Execute(button.CommandParameter);
}
}
如果您想保持命令禁用行为,您还需要做一些额外的工作。
关于带有单击事件处理程序的 WPF 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2990811/