带有单击事件处理程序的 WPF 命令

标签 wpf command

当我使用 CommandButton控制加入 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/

相关文章:

python - 如何将命令作为在 python 子进程内启动的 shell 的输入

kubernetes - kubectl运行--command vs —参数

wpf - 如何在 WPF 中提供字符串文字值作为绑定(bind)

testing - EvoSuite - 获得最多代码覆盖率的参数

.net - 4.5 中的 CallerMemberName 属性是 "able to be faked"吗?

WPF:自定义控件属性已被另一个自定义控件错误注册

c# - 设置 TextBlock 以在开头和结尾保留空白?

linux - 使用文本文件的 Perl 代码

c# - 将类处理程序限制为内容

单元格上的 WPF DataGrid 源更新已更改