Wpf 學習系列2 命令模型

2021-06-19 18:45:23 字數 719 閱讀 8942

wpf 學習系列2 命令模型

示例程式

1 為什需要命令模型?

設想有乙個程式,該程式包含乙個應用程式方法 printdocument()。 可以使用4種方法觸發該方法,比如通過主選單,通過上下文選單,通過鍵盤快捷鍵,通過工具欄按鈕。有些時候程式又需要禁止列印功能。編寫這些邏輯**是件很麻煩的事情。所以就有了wpf的命令模型。其功能可以由下圖表達:

2 使用簡單命令模型

配置乙個簡單的命令模型,就是使用系統提供的命令。分為幾個步驟。

a 設定命令繫結(commandbinding)這一步的目的是使得命令和應用程式邏輯聯絡起來,例如對於open命令,設定execute()函式確定open的程式邏輯,如開啟乙個視窗或者之類;設定canexecute()函式以確定何時可以執行open這個命令;

b  將命令配置到觸發命令的控制項,如選單項或者按鈕等等

例子講解

3 使用自己的命令

使用自己的命令主要就是自己定義命令,然後就可以像使用系統提供的命令一樣使用了。

例子講解

WPF學習筆記系列

之前有過silverlight使用經驗,最近學習了一下wpf,在學習的過程中以部落格的方式記了筆記,本筆記盡量去掉已經明白的東西,所以就叫做無廢話系列,希望對想開始學wpf的人有用。無廢話wpf系列1 xaml分析 無廢話wpf系列2 initializecomponent方法定義 無廢話wpf系列...

WPF系列學習

1 wpf最小化到系統托盤 2 wpf程式單例執行 3 wpf中三種異常捕獲 ui執行緒異常 非ui執行緒異常 tas 程異常 在窗體放乙個按鈕在單擊事件執行如下 來模擬。private void button click object sender,routedeventargs e t.isba...

WPF基礎篇 2 WPF系列征程

wpf 高階api wpf包含了一整套針對應用程式開發人員的高階服務,下面是wpf引入到windows程式設計領域中重要的一些變化。1 wpf可以通過directx提供硬體加速功能。2 類似web的布局模型。與通過具體的座標講控制項固定在具體的位置不同,wpf根據其內容靈活排列控制項的流式布局,從而...