WPF使用Prism實現簡單訂餐系統

新建wpf項目,nuget引入Prism.DryIoc,MaterialDesignThemes

引入后,修改App.xaml 前臺引入 xmlns:prism="http://prismlibrary.com/"和prism:PrismApplication App.xaml.cs

App.xaml.cs繼承PrismApplication,重寫CreateShell和RegisterTypes

   protected override Window CreateShell(){return Container.Resolve<MainWindow>();}protected override void RegisterTypes(IContainerRegistry containerRegistry){}

MainWindowViewModel繼承BindableBase,實現mvvm

上面步驟,同樣可以通過新建prism 項目,自動引入引入了prism

在model中新建屬性,實現屬性自動通知功能

    private double _total;public double Total{get { return _total; }set{_total = value;RaisePropertyChanged();}}

前臺綁定

 <TextBox VerticalAlignment="Center" x:Name="Total" Text="{Binding Total}"  Width="70" Margin="4 0 0 0" TextAlignment="Center" BorderThickness="0 0 0 2"></TextBox>

? 新建Command
?? ??? ? ?public DelegateCommand SelCommand { ?get; set; }
?? ??? ? ?
在構造函數中,綁定委托方法
?? ??? ? ?SelCommand = new DelegateCommand(()=> {
?? ??? ? ? ? ?SelectDish();
?? ??? ? ? ? ?DispAllSelect();
?? ??? ? ?});

?如果方法帶有參數,可以使用DelegateCommand<T>泛型聲明

前臺綁定控件Command屬性調用
?? ??? ? ? <CheckBox ?IsChecked="{Binding IsSelected,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}" Command="{Binding DataContext.SelCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid}}" ></CheckBox>

最后實現簡單的Order系統

代碼地址:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/19042.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/19042.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/19042.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

在線等!3damx渲染爆內存怎么辦?

在使用V-Ray進行CPU渲染時&#xff0c;復雜場景和高渲染設置可能會導致內存消耗過高&#xff0c;進而影響渲染速度&#xff0c;導致處理異常、機器停滯、應用程序崩潰等情況。 為機器配置更大的 RAM 始終是解決問題的最有效辦法&#xff0c;但如果出于預算等原因無法實現&…

Lua的幾個特殊用法

&#xff1a;/.的區別 詳細可以參考https://zhuanlan.zhihu.com/p/651619116。最重要的不同就是傳遞默認參數self。 通過.調用函數&#xff0c;傳遞self實例 通過 &#xff1a; 調用函數&#xff0c;傳遞self (不需要顯示的傳遞self參數&#xff0c;默認就會傳遞&#xff0c;但…

調出idea解決沖突界面

背景 我對idea使用不熟練&#xff0c;還是習慣用git bash來合并代碼&#xff0c;合并爆沖突后&#xff0c;我進入idea準備解決沖突&#xff0c;卻發現找不到解決沖突的界面。 解決 右擊idea中沖突的文件&#xff0c;將鼠標移動到菜單欄的git上&#xff0c;此時應該出現包含有…

Leecode熱題100--二分查找---33:搜索旋轉排序矩陣

題目&#xff1a; 整數數組 nums 按升序排列&#xff0c;數組中的值 互不相同 。 給你 旋轉后 的數組 nums 和一個整數 target &#xff0c;如果 nums 中存在這個目標值 target &#xff0c;則返回它的下標&#xff0c;否則返回 -1 。 思路&#xff1a; 此處采用容易理解的兩次…

端口掃描利器--nmap

目錄 普通掃描 幾種指定目標的方法 TCP/UDP掃描 端口服務掃描 綜合掃描 普通掃描 基于端口連接并響應(真實) ? nmap -sn 網段(0/24)-sn 幾種指定目標的方法 單個IP掃描 IP范圍掃描 掃描文件里的IP 掃描網段,(排除某IP) 掃描網段(排除某清單IP) TCP/UDP掃描 -sS …

linux中邏輯卷管理與擴展

邏輯卷管理與擴展 邏輯卷 作用&#xff1a; 1.整合分散的空間2.空間支持擴大 邏輯卷制作過程&#xff1a;將眾多的物理卷&#xff08;PV&#xff09;組建成卷組&#xff08;VG&#xff09;&#xff0c;再從卷組中劃分出邏輯卷&#xff08;LV&#xff09; 邏輯卷的邏輯思路 …

哪些公司防泄密軟件最受歡迎?2024年防泄密軟件排行榜 |

在數字化時代&#xff0c;數據的安全性和保密性已成為企業運營和發展的關鍵要素。隨著技術的不斷進步&#xff0c;防泄密軟件逐漸成為了企業保護核心數據和知識產權的重要工具。在2024年&#xff0c;市場上涌現出了眾多防泄密軟件&#xff0c;它們各具特色&#xff0c;為企業的…

楊校老師課題之基于Idea的SSM實訓項目案例開發之在線手機商城開發(一)【非常適合初學者】

1.前期配置 2.開發涉及技術棧和工具 2.1 技術棧 后端: SSM前端&#xff1a;Html、CSS、BootStrap(官方定義好的CSS樣式)數據庫: MySQL 2.2 開發環境(工具) 進行本次開發&#xff0c;需要具備如下環境: JDK a. JDK8.0/1.8 b. 注意&#xff1a; 沒有JDK是無法運行IdeaIDEA a. …

靜態住宅(ISP)代理互聯網服務提供商多賬戶使用案例

在本文我探討多賬戶管理的重要性以及使用靜態住宅 &#xff08;ISP&#xff09; 代理的好處。 什么是多個賬戶而為什么在企業上需要有它呢&#xff1f; 多賬戶管理就是指在社交媒體或者電子商務網站等各種在線平臺上創建和使用多個賬戶的做法。這種策略允許個人和企業定制內容…

Django之rest_framework(九)

一、分頁-PageNumberPagination類 REST framework提供了分頁的支持 官網:Pagination - Django REST framework 1.1、全局設置 # settings.py REST_FRAMEWORK = {DEFAULT_PAGINATION_CLASS: rest_framework.pagination.PageNumberPagination,PAGE_SIZE: 100 # 每頁數目 }提示…

ML307R OpenCPU 網絡初始化流程介紹

一、網絡初始化流程 二、函數介紹 三、示例代碼 四、代碼下載地址 一、網絡初始化流程 模組的IMEI/SN獲取接口可在include\cmiot\cm_sys.h中查看,SIM卡IMSI/ICCID獲取接口可以在include\cmiot\cm_sim.h中查看,PDP激活狀態查詢可以在include\cmiot\cm_modem.h中查看 二、函…

對紅黑樹、跳表、B+樹的一些理解

文章目錄 紅黑樹應用場景 跳表使用場景 B樹使用場景 毫無疑問數據結構是復雜的&#xff0c;讓人頭大的&#xff0c;大學時唯一掛科的就是數據結構&#xff0c;上學時不用心&#xff0c;不曉得自己的職業生涯要一直被數據結構支配。 或多或少&#xff0c;面試抱佛腳時&#xff0…

項目日記(1): boost搜索引擎

目錄 1. 項目相關背景 2. 搜索引擎的相關宏原理 3. 搜索引擎的技術棧和項目環境 4. 正排索引, 倒排索引, 搜索引擎具體原理 5. 編寫數據去標簽化和數據清洗的模塊parser(解析器). 1.項目相關背景 百度, 搜狗, 360等都有搜索引擎, 但是都是全網的搜索; boost是進行站內搜索…

【Java SE】 String、StringBuff和StringBuilder

&#x1f970;&#x1f970;&#x1f970;來都來了&#xff0c;不妨點個關注叭&#xff01; &#x1f449;博客主頁&#xff1a;歡迎各位大佬!&#x1f448; 文章目錄 1. 字符串不可變性1.1 設計不可變1.2 修改字符串創建新對象1.3 為什么字符串不可變1.4 String類設計不可變的…

在Docker中使用GPU

一、安裝nvidia-container-toolkit 總之一句話&#xff1a;nvidia-docker和nvidia-docker2&#xff0c;nvidia-container-runtime 已經被英偉達迭代了&#xff0c;可以認為nvidia-container-toolkit是nvidia-docker和nvidia-docker2&#xff0c; nvidia-container-runtime 的替…

Vue3項目練習詳細步驟(第三部分:文章分類頁面模塊)

文章分類列表 主體結構 接口文檔 文章分類列表查詢接口數據綁定 Pinia狀態管理庫 axios請求攔截器 Pinia持久化插件-persist 未登錄統一處理 添加文章分類 主體結構 接口文檔 綁定請求數據 編輯文章分類 彈框結構 數據回顯 接口文檔 綁定請求數據 刪除分類 …

前端中var、let 或 const區別

前端中var、let 或 const區別 一、前言1.var2.let3.const4.總結 一、前言 當涉及 JavaScript 中的變量聲明時&#xff0c;開發人員通常會面臨選擇使用 var、let 或 const。雖然它們都可以用來聲明變量&#xff0c;但在實際應用中&#xff0c;它們之間有一些重要的區別。接下來…

在window中使用HTTP服務器獲取kali的文件

文章目錄 一、在window中使用HTTP服務器獲取kali的文件1、疑問2、執行條件3、成功讀取 一、在window中使用HTTP服務器獲取kali的文件 1、疑問 有時候kali上面有的文件想傳入window但是發現不允許這樣操作那怎么辦呢&#xff1f;特別是在一些限制工具的比賽中想把kali的文件傳…

數字化學校渠道的建造內容

數字化學校渠道的建造內容可以用階段來區分&#xff1a; 1.網絡硬件為主的建造 這一階段首要重視的是學校網絡的硬件基礎建造&#xff0c;一起供給部分網絡根本服務&#xff0c;與此一起&#xff0c;也進行部分信息使用內容的建造&#xff0c;如電子閱覽室、歸納管理信息體系等…

Android 圖片加載glide庫 一次通關

前言 Glide是一個由Bumptech開發的開源圖片加載庫&#xff0c;專門用于Android平臺。它被廣泛應用于Android應用中&#xff0c;以簡化圖片加載過程&#xff0c;并提高性能和效率。 Glide能夠快速加載圖片&#xff0c;同時減少頁面加載時間和內存消耗。Glide具有強大的緩存機制…