public ref class UIElement : System::Windows::Media::Visual, System::Windows::IInputElement, System::Windows::Media::Animation::IAnimatable
[System.Windows.Markup.UidProperty("Uid")]
public class UIElement : System.Windows.Media.Visual, System.Windows.IInputElement, System.Windows.Media.Animation.IAnimatable
[<System.Windows.Markup.UidProperty("Uid")>]
type UIElement = class
inherit Visual
interface IAnimatable
interface IInputElement
[<System.Windows.Markup.UidProperty("Uid")>]
type UIElement = class
inherit Visual
interface IInputElement
interface IAnimatable
Public Class UIElement
Inherits Visual
Implements IAnimatable, IInputElement
UIElement
UIElement
提供元素配置特性的起點,也會公開衍生類別可以覆寫的虛擬方法,這可能會影響元素及其子專案的版面配置轉譯行為。
一般而言,元素的大部分輸入和焦點行為也會定義在 類別中
UIElement
。 這包括鍵盤、滑鼠和手寫筆輸入的事件,以及相關的狀態屬性。 其中許多事件都是路由事件,而許多輸入相關事件同時具有反升路由版本,以及事件的通道版本。 這些配對的事件通常是控制作者最感興趣的事件。
UIElement
也包含與 WPF 事件模型相關的 API,包括可以引發來自專案實例之指定路由事件的方法。
就架構而言,
UIElement
可以大致相當於 Win32 程式設計中的視窗控制碼,或動態 HTML 中的元素 (DHTML) 程式設計。
UIElement
是 WPF 核心層級的基底專案。
UIElement
具有下列由 類別特別定義的
UIElement
功能:
可以轉譯為子專案, (
UIElement
衍生自
Visual
、高階圖形類別)
包含邏輯,用來在配置系統解譯時調整 (之可能子項目
UIElement
的大小和位置)
可以回應使用者輸入 (,包括透過其事件路由傳送到的輸入控制,或)
可以引發透過邏輯專案樹狀結構移動路由的路由事件
支援動畫系統的一些層面
FrameworkElement
是建置在
UIElement
上的 WPF 架構層級實作類別,並且會新增與 WPF 架構層級的特定互動。
FrameworkElement
會新增並定義下列功能:
其他架構特定的版面配置特性
支援更豐富的屬性元資料包告
特定輸入基類及其附加屬性或附加事件的類別特定實作
進一步的動畫支援
另一個相關的類別是
ContentElement
。 類別
ContentElement
會實作許多相同的成員
UIElement
,這兩個類別之間的差異必須與整體內容模型中的預期位置相同。
UIElement
衍生類別通常會定義相對固定的內容模型,這表示標記中哪些元素可能是子項目的限制。 在 中
UIElement
可能需要較不嚴格的子內容,但該容量通常會集中于指定的內容屬性中。
ContentElement
衍生類別通常不會限制內容,以支援流程格式檔等案例。
Visibility
state 會影響該元素的所有輸入處理。 不可見的元素不會參與點擊測試,而且不會接收輸入事件,即使滑鼠位於元素的可見範圍上方也一樣。
強制轉型所指定相依性屬性的值。 完成方式是叫用存在於呼叫
DependencyObject
之相依性屬性的屬性中繼資料中所指定的任何
CoerceValueCallback
函式。
(繼承來源
DependencyObject
)