WPF學習筆記(6) WPF類層次結構

2021-04-28 08:20:19 字數 1451 閱讀 1481

類層次

wpf類層次中主要包括:

system.threading.dispatcherobject、

system.windows.dependencyobject、

system.windows.media.visual、

system.windows.uielement、

system.windows.frameworkelement

system.windows.controls.control。

這些內容與presentationframework、presentationcore有關,其中frameworkelement和control屬於presentationframework,其餘的類屬於presentationcore。

下面簡單說明一下這些類,建議讀者在了解類的同時,要注意它們之間的互動關係:

system.threading.dispatcherobject wpf中有許多類繼承自dispatcherobject,dispatcherobject提供了處理同步和併發的基本構造。wpf建立在dispatcher提供的訊息系統之上。它的工作方式很像win32中的訊息幫浦;事實上,wpf的dispatcher使用user32訊息來實現執行緒間呼叫。

system.windows.dependencyobject 構建wpf的乙個主要思想是屬性優先於方法和事件。屬性是聲名性的,並且能夠更方便實現開發人員。wpf提供了豐富的屬性系統,其核心是dependencyobject。它的基礎是屬性表示式。屬性系統提供對屬性的稀疏儲存。

system.windows.media.visual visual是乙個抽象類,每個frameworkelement物件都必須繼承該類。該類的主要作用是為wpf提供呈現支援,主要包括輸出顯示,座標轉換,區域剪下等。以使用者介面控制項(例如button,textbox)為例,這些控制項都繼承visual類,並使用該類定義的屬性實現所呈現資料的持久化。

system.windows.uielement uielement是構建wpf元素和基本呈現特徵的基類。該類繼承自visual類,其中定義很多與輸入和焦點有關的特性,例如鍵盤事件,滑鼠和筆輸入。同時,該類還包括一些與wpf事件模型有關的api。

system.windows.frameworkelement frameworkelement類是連線framework層次類與core層次類的連線點。該類不僅繼承了uielement類,而且還新增了一些功能,例如,布局定義、邏輯樹、物件生命週期事件、支援資料繫結和動態資源引用、支援樣式和動畫。

system.windows.controls.control control是建立自定義應用程式控制項的基類。開發人員可通過重寫control類所提供的屬性,方法,事件等,為自定義控制項新增自定義邏輯。

相信以上內容對於讀者了解wpf類會有一定幫助,但是只了解這些是顯然不夠的。作為一名合格wpf開發人員,必須熟悉其他細小,更為常用的wpf類。

WPF類層次結構

wpf類層次結構 system.threading.dispatcherobject類 wpf應用程式使用sta single thread affinity 模型,整個使用者介面由乙個單獨的執行緒擁有,從另乙個執行緒和使用者介面元素進行互動是不安全的。通過繼承自dispatcherobject類,...

WPF學習筆記6 Grid

grid 使用 grid 可 以在行和列中排列控制項。對於每一列,可 以指定乙個columndefinition 對於每 一行,可 以指定乙個 rowdefinition。下面的示例 顯示兩列和三行。在每一列和每一行中,都可 以指定寬度或高度。columndefinition有乙個width 依賴屬...

WPF學習筆記一 WPF概述

windows presentation foundation wpf 是下一代顯示系統,用於生成能帶給使用者震撼視覺體驗的 windows 客戶端應用程式。使用 wpf,您可以建立廣泛的獨立應用程式以及瀏覽器承載的應用程式。今年由於專案需求,開始學習使用wpf,本系列文章將記錄學習wpf中遇到的各...