WPF中CommandParameter用法

1. 界面样式

2. XAML中代码部分

cs 复制代码
<Button
    Grid.Row="0"
    Grid.Column="1"
    Command="{Binding BtnClick_Number}"
    CommandParameter="7"
    Content="7"
    Style="{StaticResource BtnStyle_Num}" />
<Button
    Grid.Row="0"
    Grid.Column="2"
    Command="{Binding BtnClick_Number}"
    CommandParameter="8"
    Content="8"
    Style="{StaticResource BtnStyle_Num}" />

3. ViewModel中代码部分

cs 复制代码
public RelayCommand<object?> BtnClick_Number { get; }

//构造函数中:
BtnClick_Number = new RelayCommand<object?>(OperNumber);

//函数实现:
private void OperNumber(object? obj)
{
    if (FxShow != null && obj != null)
    {
        FxShow = FxShow.Insert(FxShowSelectStart, obj.ToString()!);
        FxShowSelectStart++;
    }
}

这样便可以实现在一个函数(OperNumber)中根据不同的CommandParameter区分不同的按钮点击事件。

相关推荐
qq_454245037 小时前
BuildTemplateGraph 函数深度解析:动态节点图构建的架构设计与核心价值
数据结构·c#
qq_454245038 小时前
SkeletonFlow:基于组合子逻辑与范畴论的数据流处理框架
数据结构·c#
游乐码8 小时前
c#静态类和静态构造函数
开发语言·c#
net3m3310 小时前
自动分工 现象时,一共有几种可能得权重组合变化,如何确保这些组合的扫描时的不发生组合爆炸
人工智能·c#·ai编程
bugcome_com10 小时前
C# 方法详解:定义、调用与参数传递
c#
光泽雨11 小时前
AppDomain
c#
bugcome_com11 小时前
C# 可空类型(Nullable)详解
c#
大Mod_abfun13 小时前
Socket网络通信教程1(文件传输,IPv4+v6,多客户端管理,重构?)
服务器·网络·c#·socket·vb.net·文件传输
czhc114007566314 小时前
ModBus 218
c#
Never_Satisfied1 天前
在c#中,使用windows自带功能将文件夹打包为ZIP
开发语言·windows·c#