控件有多个事件时的命令的绑定

5 篇文章 0 订阅

引入命名空间

xmlns:i="http://schemas.microsoft.com/xaml/behaviors"

Window的两个事件的命令绑定

 <i:Interaction.Triggers>
        <i:EventTrigger EventName="Closing">
            <i:InvokeCommandAction Command="{Binding ClosingCommand}"/>
        </i:EventTrigger>
        <i:EventTrigger EventName="Closed">
            <i:InvokeCommandAction Command="{Binding ClosedCommand}"/>
        </i:EventTrigger>
    </i:Interaction.Triggers>
你可以通过在用户控件中定义多个按钮,并将每个按钮的命令属性绑定到不同的命令对象上来实现多个按钮命令的功能。以下是一个简单的示例: 1. 首先,在用户控件XAML 文件中定义多个按钮,并为每个按钮设置命令属性和命令参数属性: ```xml <UserControl x:Class="MyUserControl"> <StackPanel> <Button Content="Save" Command="{Binding SaveCommand}" CommandParameter="parameter1"/> <Button Content="Cancel" Command="{Binding CancelCommand}" CommandParameter="parameter2"/> <Button Content="Delete" Command="{Binding DeleteCommand}" CommandParameter="parameter3"/> </StackPanel> </UserControl> ``` 2. 然后,在用户控件的代码文件中定义多个命令对象,并将它们绑定到对应的按钮上: ```csharp public partial class MyUserControl : UserControl { public ICommand SaveCommand { get; set; } public ICommand CancelCommand { get; set; } public ICommand DeleteCommand { get; set; } public MyUserControl() { InitializeComponent(); SaveCommand = new RelayCommand(Save); CancelCommand = new RelayCommand(Cancel); DeleteCommand = new RelayCommand(Delete); DataContext = this; } private void Save(object parameter) { // Save command logic here } private void Cancel(object parameter) { // Cancel command logic here } private void Delete(object parameter) { // Delete command logic here } } ``` 3. 最后,在使用用户控件的地方,将每个命令对象分别设置为对应的命令处理程序即可: ```xml <Window x:Class="MyWindow"> <Grid> <local:MyUserControl SaveCommand="{Binding SaveCommand}" CancelCommand="{Binding CancelCommand}" DeleteCommand="{Binding DeleteCommand}"/> </Grid> </Window> ``` 这样,你就可以在用户控件中实现多个按钮命令的功能了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值