WPF 中 MVVM 如何绑定DataGrid 并动态修改单元格
发表于:2024-10-19 作者:千家信息网编辑
千家信息网最后更新 2024年10月19日,1.什么是MVVM?MVVM是Model、View、ViewModel的简写,这种模式的引入就是使用ViewModel来降低View和Model的耦合,说是降低View和Model的耦合。也可以说是是
千家信息网最后更新 2024年10月19日WPF 中 MVVM 如何绑定DataGrid 并动态修改单元格
1.什么是MVVM?
MVVM是Model、View、ViewModel的简写,这种模式的引入就是使用ViewModel来降低View和Model的耦合,说是降低View和Model的耦合。也可以说是是降低界面和逻辑的耦合,理想情况下界面和逻辑是完全分离的,单方面更改界面时不需要对逻辑代码改动,同样的逻辑代码更改时也不需要更改界面。同一个ViewModel可以使用完全不用的View进行展示,同一个View也可以使用不同的ViewModel以提供不同的操作。
2.项目目录
从上面的图我们可以看出,处理事务的文件有几个类型:View,ViewModel,Command,Property,Model,这个几个类型的图片
最下面的ViewModelBase.cs就是Property,对应处理触发属性发现变化的事务。
3.代码分析:
a):入口 App.xaml
private void Application_Startup(object sender, StartupEventArgs e) { //创建一个ViewModel; MainViewModel mode = new MainViewModel(); //初始化ViewModel内容 mode.ItemDatas = new ObservableCollection(); mode.ItemDatas.Add(new ItemData { Title = "TST", Content = "sss" }); mode.ItemDatas.Add(new ItemData { Title = "2TST", Content = "2sss" }); //初始化View; MainWindow main = new MVVMGridDemo.MainWindow(); //把ViewModel绑定到View上 main.DataContext = mode; //显示窗口 main.Show(); }
b):MainWindow窗口ViewModel;
view代码
viewmodel代码
public class MainViewModel : ViewModelBase { private ObservableCollection _itemdatas;//view 中Name为Texxt的值在这里实现 private string _texxt; public string TexxT { get { return this._texxt; } set { this._texxt = value; OnPropertyChanged("TexxT"); } }//view中itemsourse 为ItemData的数据绑定; public ObservableCollection ItemDatas { get { return _itemdatas; } set { this._itemdatas = value; OnPropertyChanged("ItemDatas"); } }//修改按钮点击事件在这里实现 public ICommand ButtonClick { get { return new ActionCommand(p => BClick(p)); } } private void BClick(object obj) { DataGrid box = (DataGrid)obj; ItemDatas[0].Title = TexxT;//刷新dataGrid box.Items.Refresh(); } }
全部源代码:https://github.com/servucn/MVVMGridDemo
交流地址:http://www.ucasp.net/wpfresources/mvvmgriddemo.shtml
代码
界面
逻辑
耦合
不同
事务
就是
类型
说是
面的
处理
不用
事件
入口
内容
单方
单方面
图片
地址
属性
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云服务器7000端口
智能家居软件开发企业好不好
让胡路区网络安全宣传周
mysql生成的数据库多大
机房服务器硬盘损坏
打印服务器 无线路由器
不同数据库连接的文件
计算机网络技术有软件开发吗
打造web服务器
白城妇炕网络技术有限公司
创建数据库文件eclipse
部队网络安全教育会简报
soul服务器多少钱一个月
绝地求生未来之翼不上服务器
ftp往服务器传文件命令
《护苗网络安全课》总结
tp5数据库配置文件在哪
网络安全支付是什么意思
首届网络安全周是几月几日
用ajax访问数据库
拜登网络安全教学视频
网络技术智能程序终端设计
风哥数据库 百度网盘
信息网络安全法规
杭州市群聚网络技术有限公司
查询数据库db2版本
app界面表单与数据库的视频
中学网络安全法全宣传方案
数据库的通信技术
南京4u服务器直销价格