请单击以进行评分并提供反馈
MSDN
MSDN Library
.NET 开发
.NET Framework
UIElement 类

  开启低带宽视图
此页面仅适用于
Microsoft Visual Studio 2008/.NET Framework 3.5

同时提供下列产品的其他版本:
.NET Framework 类库
UIElement 类

更新: 2008 年 7 月

UIElement 是 WPF 核心级实现的基类,该类建立在 Windows Presentation Foundation (WPF) 元素和基本表示特征基础上。

命名空间:  System.Windows
程序集:  PresentationCore(在 PresentationCore.dll 中)
用于 XAML 的 XMLNS:http://schemas.microsoft.com/winfx/xaml/presentation

Visual Basic(声明)
Public Class UIElement _
    Inherits Visual _
    Implements IAnimatable, IInputElement
Visual Basic (用法)
Dim instance As UIElement
C#
public class UIElement : Visual, IAnimatable, 
    IInputElement
Visual C++
public ref class UIElement : public Visual, 
    IAnimatable, IInputElement
J#
public class UIElement extends Visual implements IAnimatable, 
    IInputElement
JScript
public class UIElement extends Visual implements IAnimatable, IInputElement
XAML 对象元素用法
<UIElement .../>

UIElement 提供元素布局特征的起点,同时公开派生类可以重写的虚方法,这种方法可以影响元素及其子元素的布局呈现行为。

通常,UIElement 类中也定义了元素的许多输入和焦点行为。其中包括键盘、鼠标和手写笔输入事件,以及相关的状态属性。其中许多事件是路由事件,并且许多与输入相关的事件同时具有事件的冒泡路由版本和隧道版本。这些成对事件通常是控件作者最感兴趣的事件。

UIElement 还包含与 WPF 事件模型相关的 API,包括可以引发源自元素实例的指定路由事件的方法。

在体系结构方面,可以将 UIElement 看作与 Win32 编程中的窗口句柄或 动态 HTML (DHTML) 编程中的元素大致相当。UIElement 是 WPF 核心级基元素。

UIElement 具有下列功能,这些功能由 UIElement 类具体定义:

  • 可以呈现为子元素(UIElement 派生自高级图形类 Visual

  • 包含用于确定 UIElement 可能的子元素的大小和位置的逻辑(由布局系统解释时)

  • 可以对用户输入作出响应(包括通过处理事件路由或命令路由控制输入发送的位置)

  • 可以引发遍历逻辑元素树路由的路由事件

  • 支持动画系统的某些方面

FrameworkElement 是 WPF 框架级别实现类,该类建立在 UIElement 基础上,并添加了与 WPF 框架级别的特定交互。FrameworkElement 增加并定义了以下功能:

  • 其他框架特定的布局特征

  • 支持更丰富的有关属性的元数据报告

  • 某些输入基类的特定于类的实现及其附加属性或附加事件

  • 样式支持

  • 更多的动画支持

另一个相关类是 ContentElementContentElement 类实现许多与 UIElement 相同的成员;这两种类的区别在于它们在整体内容模型中的预期位置。通常,UIElement 派生类定义一个相对严格的内容模型,这意味着在哪种元素可以作为标记中的子元素方面存在一些限制。虽然可以对 UIElement 中的子内容采取较少的限制,但此功能通常集中在指定的内容属性中。通常,ContentElement 派生类对内容的限制不会那样严格,以支持诸如流格式文档之类的方案。

重要说明:

Visibility 状态影响该元素的所有输入处理。不可见的元素不参与命中测试并且不接收输入事件,即使鼠标放在该元素可见时的边界上也如此。

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

Windows Vista

.NET Framework 和 .NET Compact Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求

.NET Framework

受以下版本支持:3.5、3.0

日期

修订

原因

2008 年 7 月

添加了新成员:Effect 属性、Uid 属性、EffectProperty 字段和 UidProperty 字段。

SP1 功能更改。

社区内容   什么是社区内容?
添加新内容 RSS  批注
Processing
© 2009 Microsoft Corporation 版权所有。 保留所有权利  |  商标  |  隐私权声明
Page view tracker