首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> 關於.NET

《Programming WPF》中譯:第 3 章 控制項本質與外觀分離

     編輯:關於.NET

WPF 控制項是構建 UI 的積木,但不直接決定外觀。外觀由控制項模板提供,控制項與模板之間存在契約關係。本章闡述控制項 API 設計原則(命令、屬性、事件、方法優先順序)與輸入處理架構導讀。

控制項 vs 非控制項元素

  • 控制項:具互動行為(TextBox、Button、ListBox)。
  • 非控制項:純視覺呈現(Rectangle、Ellipse、TextBlock),無內建行為。

控制項架構圖解

控制項與模板關係

  • 可見部分由 Template 提供,非控制項本身。
  • 控制項透過模板向使用者呈現資訊;模板同時成為使用者輸入的命中目標。
  • 模板可替換,但替換者必須履行契約(如提供特定名稱的 PART 元素)。

MVC 視角下的控制項

  • Model:底層資料物件。
  • View:模板產生的視覺樹。
  • Controller:控制項類別本身,管理輸入、狀態與命令。

控制項對外 API 設計優先順序

  1. 命令:暴露操作語意(如 Copy、Paste),支援 XAML 宣告與設計工具。
  2. 屬性:調整行為與外觀參數(FontSize、IsEnabled)。
  3. 事件:通知重要狀態變化(Click、TextChanged)。
  4. 方法:僅當上述三者無法表達時使用(如 SelectAll()),需在後台代碼呼叫。

優先使用命令/屬性/事件,利於設計師工具支援與 XAML 宣告式開發。

輸入處理導讀

控制項需回應使用者輸入,下一節將詳細介紹 WPF 如何處理滑鼠、鍵盤、觸控筆等輸入,以及路由事件與命令如何協同工作。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved