網(wǎng)站首頁 編程語言 正文
1.NuGet引用MVVM框架包
引入該框架包之后, 默認(rèn)會在目錄下創(chuàng)建ViewModel層的示例代碼
2.第二步, 通過在MainViewModel中創(chuàng)建一些業(yè)務(wù)代碼, 將其與MainWindow.xaml 通過上下文的方式關(guān)聯(lián)起來, 而MainWindow則是通過Binding的寫法 引用業(yè)務(wù)邏輯的部分。
在MainViewModel中, 添加同一個班級名稱, 與學(xué)生列表, 分別用于顯示在文本 和列表上展示, Command則用于綁定DataGrid的雙擊命令上, 通過雙擊, 展示點擊行的學(xué)生信息:
MainViewModel 繼承了 ViewModelBase, 該繼承的父類實在MVVM框架中, 實現(xiàn)雙向通知的基類, 通過引用該類, 那么其之類的屬性則可通過 添加 RaisePropertyChanged() 即可。
- 為MainViewModel添加一些模擬數(shù)據(jù)
? - ?設(shè)計UI層, 添加一個文本用于顯示班級名稱, ?添加一個DataGrid 用于展示學(xué)生列表, ?同時DataGrid中添加一個綁定的命令(紅色區(qū)域)
關(guān)于上面紅色圈的代碼, 為一種綁定語法, 主要在MouseBinding中, MouseAction 以為觸發(fā)的事件類型, CommandParameter 則是命令傳遞的參數(shù), 也就是DataGrid選中的一行的類型 Student。
Command 則是MainViewModel中定義的Command
- 現(xiàn)在, 前端的綁定工作已經(jīng)設(shè)置好, 后臺的代碼也添加完成, 目前只需要將MainViewModel 與MainWindow 通過MainWindow的DataContext關(guān)聯(lián)即可
運行效果如下:
RaisePropertyChanged() 實現(xiàn)動態(tài)通知更新
+ 通過set訪問器更新ClassName的同時, 調(diào)用RaisePropertyChanged 方法, 界面刷新更新后的值
+ 添加一個無參數(shù)的UpdateCommand , 并設(shè)置為 UpdateText 手動把ClassName更新為 "高三三班":
+ UI層添加一個簡單按鈕, 綁定后臺的UpdateCommand命令
運行測試效果:
原文鏈接:https://www.cnblogs.com/zh7791/p/11397273.html
相關(guān)推薦
- 2022-11-14 Python中__init__.py文件的作用_python
- 2022-12-06 Python實現(xiàn)批量修改xml文件的腳本_python
- 2022-05-21 C++實現(xiàn)教職工信息管理系統(tǒng)_C 語言
- 2022-03-28 如何創(chuàng)建VS?Code?擴展插件_相關(guān)技巧
- 2022-07-29 C++超詳細講解數(shù)組操作符的重載_C 語言
- 2022-08-20 swift?framework使用OC?代碼兩種方式示例_Swift
- 2022-01-14 2022年了--你還不會手寫promise? 完成promise的所有實現(xiàn)
- 2022-08-16 .Net使用Xunit工具進行單元測試_實用技巧
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支