WPF介面的本質

2021-05-22 18:03:20 字數 782 閱讀 7384

wpf預設的資料型別為object,各種資料都可以被繫結到ui框架的控制項上,支援任意型別的資料巢狀在xaml的內部控制項上。控制項模板定義控制項外觀,資料模板定義特定的資料如何顯示,content presenter將定義的資料顯示在控制項外觀上顯示; 資料模板描述了資料顯示的外觀,通過資料繫結將這些外觀和資料關聯起來;wpf的資料繫結是乙個強大的功能,它允許單項和雙向的繫結,當物件更改時ui會自動重新整理,當ui操作後資料也可以自動更改。布局系統將確定前面生產的所有ui控制項的大小和位置,在wpf中panel以及其繼承類負責提供布局功能。布局是一種遞迴的分兩個步驟進行的過程,第一步是檢測,第二步是排列。檢測:面板詢問其子元素到底需要多少空間,這裡假設有足夠的控制項。面板會過載frameworkelement的measureoverride方法來實現這一步。排列:在檢測步驟完成後,就該排列元素了。面板會告訴子元素它們將放在**,它們有多少空間可以用。面板會過載framworkelement的arrangeoverride方法來實現這一步驟。

樣式是一種簡單的機制,通過它可以把屬性值和使用者介面元素分類開來,有點類似

css與

html

的關係;資料經過控制項模板、資料模板以及樣式和布局,再加上資料繫結就可以展現資料了。把資料顯示出來只是做了一半工作,還有一半就是提供使用者方式與

ui進行互動。

wpf控制項支援滑鼠、鍵盤和寫字板等輸入裝置來與

ui進行互動,還可以通過外部和內部時間進行操作,經過觸發後可以通過事件處理或者

command

機制來進行

action

WPF初學(一) 布局 良好介面的基礎

由winform轉到wpf的一部分人,很可能忽略掉布局,習慣性的使用固定定位。然而,沒有良好的布局,後面介面控制項畫的再好看,花哨,都不過是鮮花插在牛糞上,很可能始終都是一坨?呵呵 閒話少說,首先說說wpf中最常用,其實功能也最強大的布局 grid,很多時候,偶們只會注意到其最常用這一特點,而其之強...

虛擬桌面的本質論

虛擬化技術從去年開始突然爆發的火了起來,這與此項技術的成熟逐步成熟,硬體廠商的廣泛支援,軟體寡頭微軟的發力加入,都不無關係,而經濟危機又著實為這火上又澆了一壺油。不過,即使今天,虛擬化在眾多人眼中也只是與伺服器虛擬化劃上了等號,其實 虛擬化 技術即使在狹義上來講,也包括 伺服器虛擬化,應用虛擬化和桌...

介面的設計

佘士東 08 41 47 我設計乙個介面,其中有些方法很類似,比如取得某個工作物件,有可能需要獲得多個,也有可能獲得其中乙個,引數為工作物件的名字 名字列表。我是用窄介面還是寬介面好,是用乙個最大功能的方法還是多個過載方法好?比如 iservice public worker getworker s...