wpf button使用Command
时间: 2023-07-11 17:33:30 浏览: 121
在 WPF 中,可以使用 Command 属性将一个命令绑定到 Button 控件上,使得点击按钮时会执行该命令。具体步骤如下:
1. 创建一个实现了 ICommand 接口的命令类,例如:
```
public class MyCommand : ICommand
{
public event EventHandler CanExecuteChanged;
public bool CanExecute(object parameter)
{
// 返回一个 bool 值,表示该命令是否可执行
return true;
}
public void Execute(object parameter)
{
// 执行命令的逻辑
}
}
```
2. 在 XAML 中定义 Button 控件,并将其 Command 属性绑定到上面创建的命令类的实例,例如:
```
<Button Content="Click Me" Command="{Binding MyCommand}" />
```
其中,Binding 的 Source 属性应该指向包含 MyCommand 属性的 ViewModel 对象。
3. 如果需要在 Command 执行前后进行一些操作,可以在 Button 控件上绑定 CommandParameter 属性和 CommandBinding 对象的相应事件,例如:
```
<Button Content="Click Me" Command="{Binding MyCommand}"
CommandParameter="Hello, World!"
CommandBindings="{StaticResource MyCommandBindings}" />
```
其中,MyCommandBindings 是一个定义了 CommandBinding 对象的资源,例如:
```
<Window.Resources>
<CommandBindingCollection x:Key="MyCommandBindings">
<CommandBinding Command="{x:Static local:MyCommands.MyCommand}"
Executed="MyCommand_Executed" />
</CommandBindingCollection>
</Window.Resources>
```
其中,MyCommands.MyCommand 是上面创建的命令类的静态属性,MyCommand_Executed 是一个在命令执行后调用的事件处理方法。
阅读全文