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 )
  •