AnimatedIcon 类

定义

表示一个图标,该图标显示和控制视觉对象,该视觉对象可以进行动画处理以响应用户交互和视觉状态更改。

/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.XamlContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="Source")]
class AnimatedIcon : IconElement
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.XamlContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="Source")]
public class AnimatedIcon : IconElement
Public Class AnimatedIcon
Inherits IconElement
继承
属性

示例

提示

有关详细信息、设计指南和代码示例,请参阅 动画图标

WinUI 3 库 应用包括大多数 WinUI 3 控件、特性和功能的交互式示例。 从 Microsoft Store 获取应用,或在 GitHub 上获取源代码

向按钮添加 AnimatedIcon

此示例演示一个后退按钮,其中包含一个后退箭头图标,用于在发生指针事件时进行动画处理。

<!-- 
xmlns:animatedvisuals="using:Microsoft.UI.Xaml.Controls.AnimatedVisuals"
-->

<AppBarButton x:Name="BackButton" Label="Back"
              AnimatedIcon.State="Normal"
              PointerEntered="AppBarButton_PointerEntered"
              PointerExited="AppBarButton_PointerExited">
    <AnimatedIcon>
        <animatedvisuals:AnimatedBackVisualSource/>
        <AnimatedIcon.FallbackIconSource>
            <SymbolIconSource Symbol="Back"/>
        </AnimatedIcon.FallbackIconSource>
    </AnimatedIcon>
</AppBarButton>
// Add handlers.
protected override void OnNavigatedTo(NavigationEventArgs e)
{
    SettingsButton.AddHandler(UIElement.PointerPressedEvent, 
        new PointerEventHandler(AppBarButton_PointerPressed), true);
    SettingsButton.AddHandler(UIElement.PointerReleasedEvent, 
        new PointerEventHandler(AppBarButton_PointerReleased), true);
    base.OnNavigatedTo(e);
}

// Remove handlers.
protected override void OnNavigatedFrom(NavigationEventArgs e)
{
    SettingsButton.RemoveHandler(UIElement.PointerPressedEvent, 
        (PointerEventHandler)AppBarButton_PointerPressed);
    SettingsButton.RemoveHandler(UIElement.PointerReleasedEvent, 
        (PointerEventHandler)AppBarButton_PointerReleased);
    base.OnNavigatedFrom(e);
}

private void AppBarButton_PointerEntered(object sender, PointerRoutedEventArgs e)
{
    AnimatedIcon.SetState((UIElement)sender, "PointerOver");
}

private void AppBarButton_PointerPressed(object sender, PointerRoutedEventArgs e)
{
    AnimatedIcon.SetState((UIElement)sender, "Pressed");
}

private void AppBarButton_PointerReleased(object sender, PointerRoutedEventArgs e)
{
    AnimatedIcon.SetState((UIElement)sender, "Normal");
}

private void AppBarButton_PointerExited(object sender, PointerRoutedEventArgs e)
{
    AnimatedIcon.SetState((UIElement)sender, "Normal");
}

注解

设置 AnimatedIcon.Source 属性以指定图标的动画视觉对象。 WinUI 为 Microsoft.UI.Xaml.Controls.AnimatedVisuals 命名空间中的一些常见图标提供动画视觉对象。

在某些情况下,系统设置或限制可能会阻止图标进行动画处理。

  • 如果用户在其系统设置中关闭动画,AnimatedIcon 显示控件处于的状态转换的最后一帧。
  • 指定在不支持动画时使用的 FallbackIconSource,例如不支持 Lottie 动画的较旧版本的 Windows 上。

自定义动画

可以创建自定义动画,以用作应用中的动画图标。 可以使用 Adobe AfterEffects创建动画,然后使用该输出与 Lottie-Windows 库一起使用,以生成实现 IAnimatedVisualSource2的自定义类。 可以将此类用作动画图标的 。 有关详细信息,请参阅 使用 Lottie 为 AnimatedIcon创建动画内容。

控制动画图标状态

通过设置 AnimatedIcon.State 附加属性来更改动画的播放位置和状态。 state 属性采用描述视觉状态的字符串值,例如“Normal”、“PointerOver”或“Pressed”。 还可以指定特定的状态转换,例如“PressedToNormal”。

动画图标包含 标记 将动画时间线中的位置映射到视觉状态。 Source 支持设置 State 附加属性的字符串值在 Markers 集合中定义。 有关详细信息,请参阅 定义 AnimatedIcon 标记

在控件模板中使用的动画视觉源通常具有一组更复杂的 Markers,这些 Markers 映射到控件状态,而动画视觉对象更通用,通常具有一组更简单的 Markers,这些 Markers 映射到指针事件。

设置状态的位置

可以在 AnimatedIcon 或 XAML 树中的上级上设置属性。 在任一情况下,都需要使用附加的属性语法,如下所示:

<AnimatedIcon AnimatedIcon.State="Normal">...</AnimatedIcon>

重要

如果将 AnimatedIcon 添加到 XAML 树,并在上级元素上设置 State 属性,则必须在首次加载动画图标之前将 State 属性设置为初始值,以便图标进行动画处理。 通常,在 XAML 中设置初始状态,如下所示。

<StackPanel AnimatedIcon.State="Normal" ...>
   <AnimatedIcon>
       <animatedvisuals:AnimatedBackVisualSource/>
   </AnimatedIcon>
</StackPanel>

使用视觉状态

可以将 AnimatedIcon 添加到 XAML 控件的 ControlTemplate,并使用 VisualStateManager 设置其状态。 某些控件(如 NavigationViewItem)会自动设置设置为其 图标AnimatedIcon 的状态。

若要查看在控件模板视觉状态中设置 AnimatedIcon.State 的示例,请参阅 CheckBox的默认模板。 CheckBox 控件使用 AnimatedAcceptVisualSource 进行复选标记。 视觉状态资源库如下所示:

<VisualState x:Name="CheckedPointerOver">
    ...
    <VisualState.Setters>
        <Setter Target="CheckGlyph.(AnimatedIcon.State)" Value="PointerOverOn"/>
    </VisualState.Setters>
</VisualState>

处理指针事件

若要使 AnimatedIcon 响应用户交互,需要设置 AnimatedIcon.State 附加属性以响应某些指针事件。 此表显示通常要处理的指针事件,以及映射到这些事件的常见状态。 (但是,并不是每个动画图标源都完全映射到这些状态。

事件
UIElement.PointerEntered PointerOver
UIElement.PointerPressed Pressed
UIElement.PointerReleased Normal
UIElement.PointerExited Normal

提示

如果将 AnimatedIcon 置于 按钮 或其他具有 Click 事件的控件内,PointerPressedPointerReleased 事件将标记为 PointerRoutedEventArgs.Handled。 若要处理按钮上的这些事件,请使用 UIElement.AddHandler 方法连接事件处理程序,并将 handledEventsToo 指定为 true。 使用 UIElement.RemoveHandler 断开事件处理程序的连接。

有关演示这些事件处理程序的示例代码,请参阅“示例”部分。

XAML 附加属性

AnimatedIconXAML 附加属性的主机服务类。

为了支持 XAML 处理器访问附加属性,并且为了公开等效 获取,并将 操作设置为代码,每个 XAML 附加属性都有一对 Get 和 Set 访问器方法。 获取或设置代码中的值的另一种方法是使用依赖属性系统,调用 GetValueSetValue 并将标识符字段作为依赖属性标识符传递。

构造函数

AnimatedIcon()

初始化 AnimatedIcon 类的新实例。

属性

AccessKey

获取或设置此元素的访问键(助记)。

(继承自 UIElement)
AccessKeyScopeOwner

获取或设置一个源元素,该元素提供此元素的访问键范围,即使它不在源元素的可视化树中也是如此。

(继承自 UIElement)
ActualHeight

获取 FrameworkElement的呈现高度。 请参阅“备注”。

(继承自 FrameworkElement)
ActualOffset

获取此 UIElement 相对于其父级的位置,该位置是在布局过程的排列传递期间计算的。

(继承自 UIElement)
ActualSize

获取此 UIElement 在布局过程的排列传递期间计算的大小。

(继承自 UIElement)
ActualTheme

获取元素当前使用的 UI 主题,该主题可能与 RequestedTheme不同。

(继承自 FrameworkElement)
ActualWidth

获取 FrameworkElement的呈现宽度。 请参阅“备注”。

(继承自 FrameworkElement)
AllowDrop

获取或设置一个值,该值确定此 UIElement 是否可以是拖放操作的放置目标。

(继承自 UIElement)
AllowFocusOnInteraction

获取或设置一个值,该值指示当用户与其交互时元素是否自动获得焦点。

(继承自 FrameworkElement)
AllowFocusWhenDisabled

获取或设置禁用的控件是否可以接收焦点。

(继承自 FrameworkElement)
BaseUri

获取一个统一资源标识符(URI),该标识符表示 XAML 加载时 XAML 构造对象的基 URI。 此属性适用于运行时的 URI 解析。

(继承自 FrameworkElement)
CacheMode

获取或设置一个值,该值指示应尽可能将呈现的内容缓存为复合位图。

(继承自 UIElement)
CanBeScrollAnchor

获取或设置一个值,该值指示 UIElement 是否可以成为滚动定位的候选项。

(继承自 UIElement)
CanDrag

获取或设置一个值,该值指示是否可以在拖放操作中将元素作为数据拖动。

(继承自 UIElement)
CenterPoint

获取或设置元素的中心点,即发生旋转或缩放的点。 影响元素的呈现位置。

(继承自 UIElement)
Clip

获取或设置用于定义 UIElement内容的轮廓的 RectangleGeometry

(继承自 UIElement)
CompositeMode

获取或设置一个属性,该属性在其父布局和窗口中声明元素的备用组合和混合模式。 这与混合 XAML/Microsoft DirectX UI 中涉及的元素相关。

(继承自 UIElement)
ContextFlyout

获取或设置与此元素关联的浮出控件。

(继承自 UIElement)
DataContext

获取或设置 FrameworkElement的数据上下文。 数据上下文的常见用途是当 FrameworkElement 使用 {Binding} 标记扩展并参与数据绑定时。

(继承自 FrameworkElement)
DesiredSize

获取此 UIElement 在布局过程的度量传递期间计算的大小。

(继承自 UIElement)
Dispatcher

始终在 Windows 应用 SDK 应用中返回 null。 请改用 DispatcherQueue

(继承自 DependencyObject)
DispatcherQueue

获取与此对象关联的 DispatcherQueueDispatcherQueue 表示可以访问 UI 线程上的 DependencyObject 的设施,即使代码是由非 UI 线程启动的。

(继承自 DependencyObject)
ExitDisplayModeOnAccessKeyInvoked

获取或设置一个值,该值指定在调用访问密钥时是否消除访问密钥显示。

(继承自 UIElement)
FallbackIconSource

获取或设置在动画图标无法运行时要使用的静态图标。

FallbackIconSourceProperty

标识 FallbackIconSource 依赖属性。

FlowDirection

获取或设置文本和其他 UI 元素在控制布局的任何父元素中流动的方向。 此属性可以设置为 LeftToRightRightToLeft。 将 FlowDirection 设置为在任何元素上 RightToLeft,将对齐顺序设置为从右到左,控件的布局从右向左流动。

(继承自 FrameworkElement)
FocusState

获取一个值,该值指定此控件是否具有焦点,以及获取焦点的模式。

(继承自 UIElement)
FocusVisualMargin

获取或设置 FrameworkElement焦点视觉对象的外部边距。

(继承自 FrameworkElement)
FocusVisualPrimaryBrush

获取或设置用于为 FrameworkElement绘制 HighVisibilityReveal 焦点视觉对象的外边框的画笔。

(继承自 FrameworkElement)
FocusVisualPrimaryThickness

获取或设置 FrameworkElementHighVisibilityReveal 焦点视觉对象的外边框的粗细。

(继承自 FrameworkElement)
FocusVisualSecondaryBrush

获取或设置用于为 FrameworkElement绘制 HighVisibilityReveal 焦点视觉对象的内边框的画笔。

(继承自 FrameworkElement)
FocusVisualSecondaryThickness

获取或设置 FrameworkElementHighVisibilityReveal 焦点视觉对象的内边框的粗细。

(继承自 FrameworkElement)
Foreground

获取或设置描述前景色的画笔。

(继承自 IconElement)
Height

获取或设置 FrameworkElement的建议高度。

(继承自 FrameworkElement)
HighContrastAdjustment

获取或设置一个值,该值指示在启用高对比度主题时框架是否自动调整元素的视觉属性。

(继承自 UIElement)
HorizontalAlignment

获取或设置在布局父级(如面板或项控件)中组合时应用于 FrameworkElement 的水平对齐特征。

(继承自 FrameworkElement)
IsAccessKeyScope

获取或设置一个值,该值指示元素是否定义其自己的访问密钥范围。

(继承自 UIElement)
IsDoubleTapEnabled

获取或设置一个值,该值确定 DoubleTapped 事件是否源自该元素。

(继承自 UIElement)
IsHitTestVisible

获取或设置此 UIElement 的包含区域是否可以返回命中测试的真实值。

(继承自 UIElement)
IsHoldingEnabled

获取或设置一个值,该值确定 保留 事件是否可以源自该元素。

(继承自 UIElement)
IsLoaded

获取一个值,该值指示是否已将元素添加到元素树中并已准备好进行交互。

(继承自 FrameworkElement)
IsRightTapEnabled

获取或设置一个值,该值确定是否 RightTapped 事件源自该元素。

(继承自 UIElement)
IsTabStop

获取或设置一个值,该值指示控件是否包含在选项卡导航中。

(继承自 UIElement)
IsTapEnabled

获取或设置一个值,该值确定 点击 事件是否源自该元素。

(继承自 UIElement)
KeyboardAcceleratorPlacementMode

获取或设置一个值,该值指示控件是否 工具提示 显示其关联的键盘快捷键组合。

(继承自 UIElement)
KeyboardAcceleratorPlacementTarget

获取或设置一个值,该值指示显示快捷键组合的控件 工具提示

(继承自 UIElement)
KeyboardAccelerators

获取使用键盘调用操作的键组合的集合。

加速器通常分配给按钮或菜单项。

显示各种菜单项的键盘快捷键的菜单示例
显示各种菜单项的键盘快捷键的菜单示例

(继承自 UIElement)
KeyTipHorizontalOffset

获取或设置一个值,该值指示键提示相对于 UIElement 放置的距离。

(继承自 UIElement)
KeyTipPlacementMode

获取或设置一个值,该值指示访问键提示相对于 UIElement 边界的位置。

(继承自 UIElement)
KeyTipTarget

获取或设置一个值,该值指示访问键提示所针对的元素。

(继承自 UIElement)
KeyTipVerticalOffset

获取或设置一个值,该值指示键提示相对于 UI 元素的向上或向下放置距离。

(继承自 UIElement)
Language

获取或设置适用于 FrameworkElement的本地化/全球化语言信息,以及应用于对象表示形式和 UI 中当前 FrameworkElement 的所有子元素。

(继承自 FrameworkElement)
Lights

获取附加到此元素的 XamlLight 对象的集合。

(继承自 UIElement)
ManipulationMode

获取或设置用于 UIElement 行为和与手势交互的 ManipulationModes 值。 设置此值可在应用代码中处理此元素中的操作事件。

(继承自 UIElement)
Margin

获取或设置 FrameworkElement的外部边距。

(继承自 FrameworkElement)
MaxHeight

获取或设置 FrameworkElement的最大高度约束。

(继承自 FrameworkElement)
MaxWidth

获取或设置 FrameworkElement的最大宽度约束。

(继承自 FrameworkElement)
MinHeight

获取或设置 FrameworkElement的最小高度约束。

(继承自 FrameworkElement)
MinWidth

获取或设置 FrameworkElement的最小宽度约束。

(继承自 FrameworkElement)
MirroredWhenRightToLeft

获取或设置一个值,该值指示当 FlowDirectionRightToLeft时是否镜像图标。

MirroredWhenRightToLeftProperty

标识 MirroredWhenRightToLeft 依赖属性。

Name

获取或设置对象的标识名称。 当 XAML 处理器从 XAML 标记创建对象树时,运行时代码可以通过此名称引用 XAML 声明的对象。

(继承自 FrameworkElement)
Opacity

获取或设置对象的不透明度程度。

(继承自 UIElement)
OpacityTransition

获取或设置对 Opacity 属性的更改进行动画处理的 ScalarTransition。

(继承自 UIElement)
Parent

获取对象树中此 FrameworkElement 的父对象。

(继承自 FrameworkElement)
PointerCaptures

获取所有捕获的指针集,这些指针表示为 指针 值。

(继承自 UIElement)
Projection

获取或设置呈现此元素时要应用的透视投影(三维效果)。

(继承自 UIElement)
ProtectedCursor

获取或设置指针位于此元素上时显示的游标。 默认值为 null,表示游标没有更改。

(继承自 UIElement)
RasterizationScale

获取一个值,该值表示每个视图像素的原始(物理)像素数。

(继承自 UIElement)
RenderSize

获取 UIElement的最终呈现大小。 不建议使用,请参阅“备注”。

(继承自 UIElement)
RenderTransform

获取或设置影响 UIElement呈现位置的转换信息。

(继承自 UIElement)
RenderTransformOrigin

获取或设置 RenderTransform声明的任何可能的呈现转换的原点,相对于 UIElement边界。

(继承自 UIElement)
RequestedTheme

获取或设置 UIElement(及其子元素)用于资源确定的 UI 主题。 使用 RequestedTheme 指定的 UI 主题可以替代 app-level RequestedTheme

(继承自 FrameworkElement)
Resources

获取本地定义的资源字典。 在 XAML 中,可以通过 XAML 隐式集合语法将资源项作为 frameworkElement.Resources 属性元素的子对象元素建立。

(继承自 FrameworkElement)
Rotation

获取或设置顺时针旋转的角度(以度为单位)。 相对于 RotationAxis 和 CenterPoint 旋转。 影响元素的呈现位置。

(继承自 UIElement)
RotationAxis

获取或设置要围绕元素旋转的轴。

(继承自 UIElement)
RotationTransition

获取或设置对 Rotation 属性的更改进行动画处理的 ScalarTransition。

(继承自 UIElement)
Scale

获取或设置元素的规模。 相对于元素的 CenterPoint 进行缩放。 影响元素的呈现位置。

(继承自 UIElement)
ScaleTransition

获取或设置 Vector3Transition,该 Vector3Transition 对 Scale 属性的更改进行动画处理。

(继承自 UIElement)
Shadow

获取或设置元素强制转换的阴影效果。

(继承自 UIElement)
Source

获取或设置由 AnimatedIcon 对象显示的动画视觉对象。

SourceProperty

标识 依赖属性。

StateProperty

标识 AnimatedIcon.State XAML 附加属性。

Style

获取或设置在布局和呈现期间应用于此对象的 Style 实例。

(继承自 FrameworkElement)
TabFocusNavigation

获取或设置一个值,该值修改 tabbing 和 TabIndex 对此控件的工作方式。

(继承自 UIElement)
TabIndex

获取或设置一个值,该值确定当用户使用 tab 键浏览控件时元素接收焦点的顺序。

(继承自 UIElement)
Tag

获取或设置可用于存储有关此对象的自定义信息的任意对象值。

(继承自 FrameworkElement)
Transform3D

获取或设置呈现此元素时要应用的三维转换效果。

(继承自 UIElement)
TransformMatrix

获取或设置要应用于元素的转换矩阵。

(继承自 UIElement)
Transitions

获取或设置应用于 UIElementTransition 样式元素的集合。

(继承自 UIElement)
Translation

获取或设置元素的 x、y 和 z 呈现位置。

(继承自 UIElement)
TranslationTransition

获取或设置 Vector3Transition,该 Vector3Transition 对翻译属性的更改进行动画处理。

(继承自 UIElement)
Triggers

获取为 FrameworkElement定义的动画的触发器的集合。 不常使用。 请参阅“备注”。

(继承自 FrameworkElement)
UseLayoutRounding

获取或设置一个值,该值确定对象及其视觉子树的呈现是否应使用将呈现与整个像素对齐的舍入行为。

(继承自 UIElement)
UseSystemFocusVisuals

获取或设置一个值,该值指示控件是使用由系统绘制的焦点视觉对象还是控件模板中定义的焦点视觉对象。

(继承自 UIElement)
VerticalAlignment

获取或设置在父对象(如面板或项控件)中组合时应用于 FrameworkElement 的垂直对齐特征。

(继承自 FrameworkElement)
Visibility

获取或设置 UIElement的可见性。 不呈现不可见的 UIElement,不将其所需大小传达给布局。

(继承自 UIElement)
Width

获取或设置 FrameworkElement的宽度。

(继承自 FrameworkElement)
XamlRoot

获取或设置正在查看此元素的 XamlRoot

(继承自 UIElement)
XYFocusDown

获取或设置当用户按下游戏控制器方向盘(D 板)时获得焦点的对象。

(继承自 UIElement)
XYFocusDownNavigationStrategy

获取或设置一个值,该值指定用于确定向下导航的目标元素的策略。

(继承自 UIElement)
XYFocusKeyboardNavigation

获取或设置一个值,该值使用键盘方向箭头启用或禁用导航。

(继承自 UIElement)
XYFocusLeft

获取或设置当用户向左按下游戏控制器方向盘(D 板)时获得焦点的对象。

(继承自 UIElement)
XYFocusLeftNavigationStrategy

获取或设置一个值,该值指定用于确定左侧导航的目标元素的策略。

(继承自 UIElement)
XYFocusRight

获取或设置当用户向右按下游戏控制器方向面板(D 板)时获取焦点的对象。

(继承自 UIElement)
XYFocusRightNavigationStrategy

获取或设置一个值,该值指定用于确定右侧导航的目标元素的策略。

(继承自 UIElement)
XYFocusUp

获取或设置当用户按下游戏控制器方向面板(D 板)时获得焦点的对象。

(继承自 UIElement)
XYFocusUpNavigationStrategy

获取或设置一个值,该值指定用于确定向上导航的目标元素的策略。

(继承自 UIElement)

附加属性

State

开发人员在 AnimatedIcon 上设置的属性。

方法

AddHandler(RoutedEvent, Object, Boolean)

为指定的路由事件添加路由事件处理程序,将处理程序添加到当前元素上的处理程序集合。 将 handledEventsToo 指定为 true,即使在其他位置处理事件,也调用提供的处理程序。

(继承自 UIElement)
Arrange(Rect)

定位子对象并确定 UIElement的大小。 为其子元素实现自定义布局的父对象应从其布局重写实现中调用此方法,以形成递归布局更新。

(继承自 UIElement)
ArrangeOverride(Size)

提供布局的“排列”传递的行为。 类可以重写此方法以定义其自己的“排列”传递行为。

(继承自 FrameworkElement)
CancelDirectManipulations()

在包含当前 UIElement的任何 ScrollViewer 父级上取消正在进行的直接操作处理(系统定义的平移/缩放)。

(继承自 UIElement)
CapturePointer(Pointer)

将指针捕获设置为 UIElement。 捕获后,只有具有捕获的元素才会触发与指针相关的事件。

(继承自 UIElement)
ClearValue(DependencyProperty)

清除依赖属性的本地值。

(继承自 DependencyObject)
FindName(String)

检索具有指定标识符名称的对象。

(继承自 FrameworkElement)
FindSubElementsForTouchTargeting(Point, Rect)

启用 UIElement 子类来公开有助于解析触摸目标的子元素。

(继承自 UIElement)
Focus(FocusState)

尝试将焦点设置为此元素。

(继承自 UIElement)
GetAnimationBaseValue(DependencyProperty)

返回为依赖属性建立的任何基值,在动画未处于活动状态的情况下,该属性将适用。

(继承自 DependencyObject)
GetBindingExpression(DependencyProperty)

返回表示指定属性上的绑定的 BindingExpression

(继承自 FrameworkElement)
GetChildrenInTabFocusOrder()

启用 UIElement 子类来公开参与 Tab 焦点的子元素。

(继承自 UIElement)
GetState(DependencyObject)

检索指定 DependencyObjectAnimatedIcon.State 附加属性的值。

GetValue(DependencyProperty)

DependencyObject返回依赖属性的当前有效值。

(继承自 DependencyObject)
GetVisualInternal()

检索元素解析为的 Visual

(继承自 UIElement)
GoToElementStateCore(String, Boolean)

在派生类中实现时,为代码中的控件模板启用可视化树的按状态构造,而不是在控件启动时加载所有状态的 XAML。

(继承自 FrameworkElement)
InvalidateArrange()

使 UIElement的排列状态(布局)无效。 失效后,UIElement 将更新其布局,这将异步发生。

(继承自 UIElement)
InvalidateMeasure()

使 UIElement的度量状态(布局)无效。

(继承自 UIElement)
InvalidateViewport()

使用于计算 有效视区UIElement 的视区状态无效。

(继承自 FrameworkElement)
Measure(Size)

更新 UIElementDesiredSize。 通常,为其布局子级实现自定义布局的对象从自己的 MeasureOverride 实现调用此方法,以形成递归布局更新。

(继承自 UIElement)
MeasureOverride(Size)

提供布局周期的“度量值”传递的行为。 类可以重写此方法以定义其自己的“Measure”传递行为。

(继承自 FrameworkElement)
OnApplyTemplate()

每当应用程序代码或内部进程(如重新生成布局传递)调用时调用 ApplyTemplate。 在最简单的术语中,这意味着在应用中显示 UI 元素之前调用该方法。 重写此方法以影响类的默认模板后逻辑。

(继承自 FrameworkElement)
OnBringIntoViewRequested(BringIntoViewRequestedEventArgs)

在发生 BringIntoViewRequested 事件之前调用。

(继承自 UIElement)
OnCreateAutomationPeer()

在派生类中实现时,为 Microsoft UI 自动化基础结构返回特定于类的 AutomationPeer 实现。

(继承自 UIElement)
OnDisconnectVisualChildren()

重写此方法以实现从类特定的内容或子属性中删除项时布局和逻辑的行为方式。

(继承自 UIElement)
OnKeyboardAcceleratorInvoked(KeyboardAcceleratorInvokedEventArgs)

在应用中处理 键盘快捷方式(或快捷键) 时调用。 重写此方法以处理调用键盘加速器时应用响应的方式。

(继承自 UIElement)
OnProcessKeyboardAccelerators(ProcessKeyboardAcceleratorEventArgs)

在应用中处理 键盘快捷方式(或快捷键)之前调用。 每当应用程序代码或内部进程调用 ProcessKeyboardAccelerators时调用。 重写此方法以影响默认加速器处理。

(继承自 UIElement)
PopulatePropertyInfo(String, AnimationPropertyInfo)

定义可以进行动画处理的属性。

(继承自 UIElement)
PopulatePropertyInfoOverride(String, AnimationPropertyInfo)

在派生类中重写时,定义可以进行动画处理的属性。

(继承自 UIElement)
ReadLocalValue(DependencyProperty)

如果设置了本地值,则返回依赖属性的本地值。

(继承自 DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

注册一个通知函数,用于侦听此 DependencyObject 实例上特定 DependencyProperty 的更改。

(继承自 DependencyObject)
ReleasePointerCapture(Pointer)

释放此 UIElement捕获一个特定指针的指针捕获。

(继承自 UIElement)
ReleasePointerCaptures()

释放此元素保存的所有指针捕获。

(继承自 UIElement)
RemoveHandler(RoutedEvent, Object)

从此 UIElement中删除指定的路由事件处理程序。 通常,AddHandler添加有问题的处理程序。

(继承自 UIElement)
SetBinding(DependencyProperty, BindingBase)

使用提供的绑定对象将绑定附加到 FrameworkElement

(继承自 FrameworkElement)
SetState(DependencyObject, String)

指定指定的 DependencyObjectAnimatedIcon.State 附加属性的值。

SetValue(DependencyProperty, Object)

设置 DependencyObject上的依赖属性的本地值。

(继承自 DependencyObject)
StartAnimation(ICompositionAnimationBase)

开始元素上的指定动画。

(继承自 UIElement)
StartBringIntoView()

向 XAML 框架发出请求,将元素引入其包含的任何可滚动区域中的视图中。

(继承自 UIElement)
StartBringIntoView(BringIntoViewOptions)

启动对 XAML 框架的请求,以使用指定的选项将元素引入视图。

(继承自 UIElement)
StartDragAsync(ExpPointerPoint)

表示一个图标,该图标显示和控制视觉对象,该视觉对象可以进行动画处理以响应用户交互和视觉状态更改。

(继承自 UIElement)
StartDragAsync(PointerPoint)

启动拖放操作。

重要

如果用户以管理员身份以提升模式运行应用,则不受支持。

(继承自 UIElement)
StopAnimation(ICompositionAnimationBase)

停止元素上的指定动画。

(继承自 UIElement)
TransformToVisual(UIElement)

返回一个转换对象,该对象可用于将坐标从 UIElement 转换为指定对象。

(继承自 UIElement)
TryInvokeKeyboardAccelerator(ProcessKeyboardAcceleratorEventArgs)

尝试通过搜索 UIElement 的整个可视化树来调用 键盘快捷方式(或快捷键)

(继承自 UIElement)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

取消以前通过调用 RegisterPropertyChangedCallback注册的更改通知。

(继承自 DependencyObject)
UpdateLayout()

确保正确更新 UIElement 子对象的所有位置以进行布局。

(继承自 UIElement)

事件

AccessKeyDisplayDismissed

在不再显示访问密钥时发生。

(继承自 UIElement)
AccessKeyDisplayRequested

当用户请求显示访问密钥时发生。

(继承自 UIElement)
AccessKeyInvoked

当用户完成访问密钥序列时发生。

(继承自 UIElement)
ActualThemeChanged

在 ActualTheme 属性值发生更改时发生。

(继承自 FrameworkElement)
BringIntoViewRequested

当对此元素或其子代之一调用 StartBringIntoView 时发生。

(继承自 UIElement)
CharacterReceived

当输入队列接收单个组合字符时发生。

(继承自 UIElement)
ContextCanceled

当上下文输入手势继续进入操作手势时发生,以通知元素不应打开上下文浮出控件。

(继承自 UIElement)
ContextRequested

当用户完成上下文输入手势(例如右键单击)时发生。

(继承自 UIElement)
DataContextChanged

FrameworkElement.DataContext 的值 属性更改时发生。

(继承自 FrameworkElement)
DoubleTapped

在此元素的命中测试区域发生其他未经处理的 DoubleTap 交互时发生。

(继承自 UIElement)
DragEnter

当输入系统报告具有此元素作为目标的基础拖动事件时发生。

(继承自 UIElement)
DragLeave

当输入系统报告具有此元素作为源的基础拖动事件时发生。

(继承自 UIElement)
DragOver

当输入系统将具有此元素的基础拖动事件报告为潜在放置目标时发生。

(继承自 UIElement)
DragStarting

在启动拖动操作时发生。

(继承自 UIElement)
Drop

当输入系统将此元素作为放置目标报告基础删除事件时发生。

(继承自 UIElement)
DropCompleted

在结束源时使用此元素执行拖放操作时发生。

(继承自 UIElement)
EffectiveViewportChanged

FrameworkElement有效视区 更改时发生。

(继承自 FrameworkElement)
GettingFocus

UIElement 接收焦点之前发生。 此事件是同步引发的,以确保事件在冒泡时不会移动焦点。

(继承自 UIElement)
GotFocus

UIElement 接收焦点时发生。 此事件是异步引发的,因此焦点可以在浮泡完成之前再次移动。

(继承自 UIElement)
Holding

在此元素的命中测试区域发生其他未经处理的 保留 交互时发生。

(继承自 UIElement)
KeyDown

UIElement 具有焦点时按下键盘键时发生。

(继承自 UIElement)
KeyUp

UIElement 具有焦点时释放键盘键时发生。

(继承自 UIElement)
LayoutUpdated

当可视化树的布局发生更改时,由于布局相关的属性更改值或刷新布局的其他操作。

(继承自 FrameworkElement)
Loaded

在构造并添加到对象树并已准备好交互 FrameworkElement 时发生。

(继承自 FrameworkElement)
Loading

FrameworkElement 开始加载时发生。

(继承自 FrameworkElement)
LosingFocus

UIElement 失去焦点之前发生。 此事件是同步引发的,以确保事件在冒泡时不会移动焦点。

(继承自 UIElement)
LostFocus

UIElement 失去焦点时发生。 此事件是异步引发的,因此焦点可以在浮泡完成之前再次移动。

(继承自 UIElement)
ManipulationCompleted

UIElement 上的操作完成时发生。

(继承自 UIElement)
ManipulationDelta

在操作过程中输入设备更改位置时发生。

(继承自 UIElement)
ManipulationInertiaStarting

当输入设备在操作和惯性开始时失去与 UIElement 对象的接触时发生。

(继承自 UIElement)
ManipulationStarted

当输入设备开始对 UIElement进行操作时发生。

(继承自 UIElement)
ManipulationStarting

首次创建操作处理器时发生。

(继承自 UIElement)
NoFocusCandidateFound

当用户尝试移动焦点(通过制表符或方向箭头)时发生,但焦点不会移动,因为没有在移动方向找到候选焦点。

(继承自 UIElement)
PointerCanceled

当使联系人异常失去联系人的指针时发生。

(继承自 UIElement)
PointerCaptureLost

当此元素以前持有的指针捕获移动到另一个元素或其他地方时发生。

(继承自 UIElement)
PointerEntered

当指针进入此元素的命中测试区域时发生。

(继承自 UIElement)
PointerExited

当指针离开此元素的命中测试区域时发生。

(继承自 UIElement)
PointerMoved

当指针在指针保留在此元素的命中测试区域中时发生。

(继承自 UIElement)
PointerPressed

当指针设备启动此元素中的 操作时发生。

(继承自 UIElement)
PointerReleased

在此元素中释放之前启动 操作的指针设备时发生。 请注意,新闻 操作的结束不能保证触发 PointerReleased 事件;其他事件可能会触发。 有关详细信息,请参阅“备注”。

(继承自 UIElement)
PointerWheelChanged

当指针滚轮的增量值更改时发生。

(继承自 UIElement)
PreviewKeyDown

UIElement 具有焦点时按下键盘键时发生。

(继承自 UIElement)
PreviewKeyUp

UIElement 具有焦点时释放键盘键时发生。

(继承自 UIElement)
ProcessKeyboardAccelerators

按下 键盘快捷方式(或快捷键) 时发生。

(继承自 UIElement)
RightTapped

当指针位于元素上时发生右键输入刺激时发生。

(继承自 UIElement)
SizeChanged

ActualHeightActualWidth 属性值更改 FrameworkElement时发生。

(继承自 FrameworkElement)
Tapped

在其他未经处理的 点击 交互发生在此元素的命中测试区域时发生。

(继承自 UIElement)
Unloaded

当此对象不再连接到主对象树时发生。

(继承自 FrameworkElement)

适用于

另请参阅