当前位置: 首页 > news >正文

WPF基础入门-Class7-WPF-MVVN框架

WPF基础入门

Class7-MVVN框架

使用框架可以省掉如Class6中的ViewModelBase.csOnPropertyChanged,亦方便命令传参
1、NuGet安装CommunityToolkit.Mvvm(原Mircrosoft.Toolkit.Mvvm)也可以安装MVVMLight等其他集成库

2、显示页面:

    <Grid><StackPanel><TextBox x:Name="input" Text="{Binding Name}"></TextBox><TextBox Text="{Binding Title}"></TextBox><!--CommandParameter传参到命令中--><ButtonCommand="{Binding ShowCommand}"CommandParameter="{Binding ElementName=input, Path=Text}">Button</Button></StackPanel></Grid>

2、model文件:

class model_csdn : ObservableObject{public model_csdn(){Name = "Ini_name";Title = "点击后变成Name内容";ShowCommand = new RelayCommand<string>(show);}//public MyCommamd ShowCommand { get; set; }public RelayCommand<string> ShowCommand { get; set; }public string name;public string title;public string Name{get { return name; }set{name = value;OnPropertyChanged();}}public string Title{get { return title; }set{title = value;OnPropertyChanged();}}public void show(string value){Name = "change name";Title = value;MessageBox.Show("value");}}

3、显示效果:
在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/146028.html

相关文章:

  • C语言练习题第三弹!!!绝对典中典!!!
  • Jedis
  • Linux 使用TCP_INFO查询TCP连接的状态信息
  • 软件测试案例 | 气象探测库存管理系统的集成测试计划
  • vue点击按钮重新加载页面(vue第一次加载页面点击按钮出现页面刷新问题之后一切正常)
  • 软件工程(十一) 系统设计分类
  • 数字转中文大写金额
  • Java——HashMap和HashTable的区别
  • Docker去除sudo权限
  • 【ROS系统】Ubuntu22.04系统中安装ROS2系统_ubuntu 安装ros2_GoesM
  • MySQL8.0.22安装过程记录(个人笔记)
  • Python中pip和conda的爱恨情仇
  • HTTPS协议原理
  • C语言每日一练------Day(6)
  • springboot中使用ElasticSearch
  • 十二、集合(2)
  • 【网络设备】交换机的概念、工作原理、功能以及以太网帧格式
  • 研磨设计模式day11观察者模式
  • 第八周第二天学习总结 | MySQL入门及练习学习第四天
  • WPF数据转换
  • 《Go 语言第一课》课程学习笔记(十三)
  • 基于RUM高效治理网站用户体验入门-价值篇
  • Unity之Photon PUN2开发多人游戏如何实现组队功能
  • 大数据Flink简介与架构剖析并搭建基础运行环境
  • RISC-V IOPMP实际用例-Rapid-k模型在NVIDIA上的应用
  • 【UE5】给模型指定面添加自定义材质
  • mall:redis项目源码解析
  • RISC-V Linux系统kernel制作
  • 5G NR:PRACH时域资源
  • LLaMA-2的模型架构