AutoSuggestBox 类

定义

表示一个文本控件,当用户使用键盘或笔输入文本时, (使用墨迹和手写识别) 向用户提出建议。 当用户更改文本时,应用会收到通知,并负责提供相关建议,以便显示此控件。

public ref class AutoSuggestBox sealed : ItemsControl
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AutoSuggestBox final : ItemsControl
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class AutoSuggestBox final : ItemsControl
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class AutoSuggestBox : ItemsControl
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class AutoSuggestBox : ItemsControl
Public NotInheritable Class AutoSuggestBox
Inherits ItemsControl
<AutoSuggestBox .../>
继承
Object Platform::Object IInspectable DependencyObject UIElement FrameworkElement Control ItemsControl AutoSuggestBox
属性

Windows 要求

设备系列
Windows 10 (在 10.0.10240.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)

示例

提示

有关详细信息、设计指南和代码示例,请参阅 自动建议框

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

下面是带有所需事件处理程序的简单 AutoSuggestBox。

<AutoSuggestBox PlaceholderText="Search" QueryIcon="Find" Width="200"
                TextChanged="AutoSuggestBox_TextChanged"
                QuerySubmitted="AutoSuggestBox_QuerySubmitted"
                SuggestionChosen="AutoSuggestBox_SuggestionChosen"/>
private void AutoSuggestBox_TextChanged(AutoSuggestBox sender, AutoSuggestBoxTextChangedEventArgs args)
{
    // Only get results when it was a user typing, 
    // otherwise assume the value got filled in by TextMemberPath 
    // or the handler for SuggestionChosen.
    if (args.Reason == AutoSuggestionBoxTextChangeReason.UserInput)
    {
        //Set the ItemsSource to be your filtered dataset
        //sender.ItemsSource = dataset;
    }
}


private void AutoSuggestBox_SuggestionChosen(AutoSuggestBox sender, AutoSuggestBoxSuggestionChosenEventArgs args)
{
    // Set sender.Text. You can use args.SelectedItem to build your text string.
}


private void AutoSuggestBox_QuerySubmitted(AutoSuggestBox sender, AutoSuggestBoxQuerySubmittedEventArgs args)
{
    if (args.ChosenSuggestion != null)
    {
        // User selected an item from the suggestion list, take an action on it here.
    }
    else
    {
        // Use args.QueryText to determine what to do.
    }
}

注解

提示

有关详细信息、设计指南和代码示例,请参阅 自动建议框

使用 AutoSuggestBox 提供建议列表,以便用户在键入时从中进行选择。

默认情况下,文本输入框中不会显示查询按钮。 你可以设置 QueryIcon 属性以在文本框的右侧添加附带指定图标的按钮。 例如,若要使 AutoSuggestBox 看起来像一个典型的搜索框,可添加一个“查找”图标,如下所示。

<AutoSuggestBox QueryIcon="Find"/>

下面是附带“查找”图标的 AutoSuggestBox。 建议列表根据用户的条目显示建议的结果。

带有图标和建议的自动建议框 若要使用 AutoSuggestBox,需要响应 3 个用户操作。
  • 更改的文本 - 当用户输入文本时,更新建议列表。
  • 选择的建议 - 当用户在建议列表中选择某个建议时,更新文本框。
  • 提交的查询 - 当用户提交某个查询时,显示查询结果。

更改的文本

每当更新文本框的内容时,都将引发 TextChanged 事件。 使用事件参数 Reason 属性确定更改是否缘自用户输入。 如果更改原因是 UserInput,则根据输入筛选你的数据。 然后,将筛选的数据设置为 AutoSuggestBox 的 ItemsSource 以更新建议列表。

若要控制项目在建议列表中的显示方式,你可以使用 DisplayMemberPathItemTemplate

  • 若要显示数据项的单个属性的文本,请将 DisplayMemberPath 属性设置为选择要在建议列表中显示对象中的哪个属性。
  • 若要为列表中的每个项定义自定义外观,请使用 ItemTemplate 属性 。

选择的建议

当用户使用键盘导航浏览建议列表时,你需要更新文本框中的文本以进行匹配。

你可以设置 TextMemberPath 属性以选择数据对象中的哪个属性要显示在文本框中。 如果指定 TextMemberPath,文本框会自动更新。 通常应为 DisplayMemberPathTextMemberPath 指定相同的值,以便建议列表和文本框中的文本相同。

如果你需要显示多个简单属性,请处理 SuggestionChosen 事件以根据所选项目使用自定义文本填充文本框。

提交的查询

处理 QuerySubmitted 事件以执行适合你的应用的查询操作,并向用户显示结果。

当用户提交查询字符串时,将发生 QuerySubmitted 事件。 用户可以采用以下方式之一提交查询:

  • 当焦点位于文本框中时,按 Enter 或单击查询图标。 事件参数 ChosenSuggestion 属性是 null
  • 当焦点位于建议列表中时,按 Enter、单击或点击某个项目。 事件参数 ChosenSuggestion 属性包含从列表中选择的项。 在所有情况下,事件参数 QueryText 属性都包含文本框中的文本。

可访问性

如果使用辅助技术(如 “讲述人”)与 AutoSuggestBox 交互,则辅助功能体验已为你挂钩。 用户将:

  • 了解列表是否存在,以及列表关闭的时间
  • 了解可用的建议数目
  • 能够将“讲述人”焦点移动到列表
  • 能够使用所有其他阅读模式浏览建议,有关详细信息,请参阅 自动建议辅助功能

笔输入

从 Windows 10 版本 1803 开始,XAML 文本输入框默认支持使用 Windows Ink 进行笔输入。 当用户使用 Windows 笔点击进入文本输入框时,文本框会进行转换,以允许用户直接用笔进行写入,而不是打开一个单独的输入面板。

可以通过 AutoSuggestBox 的 TextBox 控件配置手写视图,如下所示。

<AutoSuggestBox Name="NoHandwritingAutoSuggestBox"
        BorderThickness="0"  Width="680"
        FontSize="24" VerticalAlignment="Top"
        HorizontalAlignment="Center"
        PlaceholderText="Handwriting view is not supported">
    <AutoSuggestBox.TextBoxStyle>
        <Style TargetType="TextBox">
            <Setter Property="IsHandwritingViewEnabled" Value="False"/>
        </Style>
    </AutoSuggestBox.TextBoxStyle>
</AutoSuggestBox>
带墨迹和提示的文本框

有关详细信息,请参阅带手写视图的文本输入

控件样式和模板

可以修改默认 的 StyleControlTemplate ,使控件具有唯一的外观。 有关修改控件样式和模板的信息,请参阅 设置控件样式。 文件中包括 generic.xaml 定义控件外观的默认样式、模板和资源。 出于设计目的, generic.xaml 通过 SDK 或 NuGet 包安装在本地提供。

  • 建议) (WinUI 样式 有关 WinUI 中更新的样式,请参阅 \Users\<username>\.nuget\packages\microsoft.ui.xaml\<version>\lib\uap10.0\Microsoft.UI.Xaml\Themes\generic.xaml
  • 非 WinUI 样式: 有关内置样式,请参阅 %ProgramFiles(x86)%\Windows Kits\10\DesignTime\CommonConfiguration\Neutral\UAP\<SDK version>\Generic\generic.xaml

如果自定义安装,位置可能会有所不同。 不同版本的 SDK 中的样式和资源可能具有不同的值。

XAML 还包括可用于在不修改控件模板的情况下修改不同视觉状态中的控件颜色的资源。 修改这些资源是首选设置属性,如 BackgroundForeground。 有关详细信息,请参阅 XAML 样式一文的轻量级样式部分。 从 Windows 10 版本 1607 (SDK 14393) 开始提供轻型样式资源。

TextControl 开头的资源由 TextBoxPasswordBoxRichEditBoxAutoSuggestBox共享。 对这些资源的更改将影响所有四个控件。

版本历史记录

Windows 版本 SDK 版本 增值
1607 14393 LightDismissOverlayMode
1809 17763 说明

构造函数

AutoSuggestBox()

初始化 AutoSuggestBox 类的新实例。

属性

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

指示建议区域是否应自动最大化。

AutoMaximizeSuggestionAreaProperty

标识 AutoMaximizeSuggestionArea 依赖属性。

Background

获取或设置提供控件背景的画笔。

(继承自 Control)
BackgroundSizing

获取或设置一个值,该值指示背景相对于此元素边框的延伸程度。

(继承自 Control)
BaseUri

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

(继承自 FrameworkElement)
BorderBrush

获取或设置描述控件边框填充的画笔。

(继承自 Control)
BorderThickness

获取或设置控件的边框宽度。

(继承自 Control)
CacheMode

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

(继承自 UIElement)
CanBeScrollAnchor

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

(继承自 UIElement)
CanDrag

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

(继承自 UIElement)
CenterPoint

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

(继承自 UIElement)
CharacterSpacing

获取或设置字符之间的统一间距,单位为 1/1000 em。

(继承自 Control)
Clip

获取或设置用于定义 UIElement 内容的大纲的 RectangleGeometry

(继承自 UIElement)
CompositeMode

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

(继承自 UIElement)
ContextFlyout

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

(继承自 UIElement)
CornerRadius

获取或设置控件边框角的半径。

(继承自 Control)
DataContext

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

(继承自 FrameworkElement)
DefaultStyleKey

获取或设置引用控件的默认样式的键。 自定义控件的作者使用此属性更改其控件使用的样式的默认值。

(继承自 Control)
DefaultStyleResourceUri

获取或设置包含控件的默认样式的资源文件的路径。

(继承自 Control)
Description

获取或设置控件下方显示的内容。 内容应提供有关控件预期的输入的指导。

DescriptionProperty

标识 Description 依赖属性。

DesiredSize

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

(继承自 UIElement)
Dispatcher

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

(继承自 DependencyObject)
DisplayMemberPath

获取或设置为每个数据项显示的属性的名称或路径。

(继承自 ItemsControl)
ElementSoundMode

获取或设置一个值,该值指定控件是否播放声音的首选项。

(继承自 Control)
ExitDisplayModeOnAccessKeyInvoked

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

(继承自 UIElement)
FlowDirection

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

(继承自 FrameworkElement)
FocusState

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

(继承自 Control)
FocusVisualMargin

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

(继承自 FrameworkElement)
FocusVisualPrimaryBrush

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

(继承自 FrameworkElement)
FocusVisualPrimaryThickness

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

(继承自 FrameworkElement)
FocusVisualSecondaryBrush

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

(继承自 FrameworkElement)
FocusVisualSecondaryThickness

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

(继承自 FrameworkElement)
FontFamily

获取或设置用于显示控件中的文本的字体。

(继承自 Control)
FontSize

获取或设置此控件中文本的大小。

(继承自 Control)
FontStretch

获取或设置字体在屏幕上紧缩或加宽的程度。

(继承自 Control)
FontStyle

获取或设置呈现文本的样式。

(继承自 Control)
FontWeight

获取或设置指定字体的粗细。

(继承自 Control)
Foreground

获取或设置一个用于描述前景色的画笔。

(继承自 Control)
GroupStyle

获取 GroupStyle 对象的集合,这些对象定义每个级别的组的外观。

(继承自 ItemsControl)
GroupStyleSelector

获取或设置对自定义 GroupStyleSelector 逻辑类的引用。 GroupStyleSelector 根据内容的特征返回要用于内容的不同 GroupStyle 值。

(继承自 ItemsControl)
Header

获取或设置此控件的文本框部分的标头对象。

HeaderProperty

标识 Header 依赖属性。

Height

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

(继承自 FrameworkElement)
HighContrastAdjustment

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

(继承自 UIElement)
HorizontalAlignment

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

(继承自 FrameworkElement)
HorizontalContentAlignment

获取或设置控件内容的水平对齐方式。

(继承自 Control)
IsAccessKeyScope

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

(继承自 UIElement)
IsDoubleTapEnabled

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

(继承自 UIElement)
IsEnabled

获取或设置一个值,该值指示用户是否可以与控件交互。

(继承自 Control)
IsFocusEngaged

获取或设置一个值,该值指示焦点是否受限于游戏板/远程交互) 的控制边界 (。

(继承自 Control)
IsFocusEngagementEnabled

获取或设置一个值,该值指示是否可以在游戏板/远程交互) (控制边界内限制焦点。

(继承自 Control)
IsGrouping

获取一个值,该值指示控件是否正在使用分组。

(继承自 ItemsControl)
IsHitTestVisible

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

(继承自 UIElement)
IsHoldingEnabled

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

(继承自 UIElement)
IsLoaded

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

(继承自 FrameworkElement)
IsRightTapEnabled

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

(继承自 UIElement)
IsSuggestionListOpen

获取或设置一个布尔值,该值指示 AutoSuggestBox 的下拉部分是否已打开。

IsSuggestionListOpenProperty

标识 IsSuggestionListOpen 依赖属性。

IsTabStop

获取或设置一个值,该值指示是否将某个控件包含在 Tab 导航中。

(继承自 Control)
IsTapEnabled

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

(继承自 UIElement)
IsTextScaleFactorEnabled

获取或设置是否启用自动文本放大,以反映系统文本大小设置。

(继承自 Control)
ItemContainerGenerator

获取与此 ItemsControl 关联的 ItemContainerGenerator

(继承自 ItemsControl)
ItemContainerStyle

获取或设置呈现 ItemsControl 的项容器时使用的样式。

(继承自 ItemsControl)
ItemContainerStyleSelector

获取或设置对自定义 StyleSelector 逻辑类的引用。 StyleSelector 根据所显示对象的特征返回用于项容器的不同 Style 值。

(继承自 ItemsControl)
ItemContainerTransitions

获取或设置应用于 ItemsControl 的项容器的 Transition 样式元素的集合。

(继承自 ItemsControl)
Items

获取用于生成 控件内容的集合。

(继承自 ItemsControl)
ItemsPanel

获取或设置模板,该模板定义对项的布局进行控制的面板。

(继承自 ItemsControl)
ItemsPanelRoot

获取由 ItemsPanel 指定的 Panel

(继承自 ItemsControl)
ItemsSource

获取或设置用于生成 ItemsControl 内容的对象源。

(继承自 ItemsControl)
ItemTemplate

获取或设置用于显示每个项的 DataTemplate

(继承自 ItemsControl)
ItemTemplateSelector

获取或设置对自定义 DataTemplateSelector 逻辑类的引用。 此属性引用的 DataTemplateSelector 返回要应用于项的模板。

(继承自 ItemsControl)
KeyboardAcceleratorPlacementMode

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

(继承自 UIElement)
KeyboardAcceleratorPlacementTarget

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

(继承自 UIElement)
KeyboardAccelerators

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

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

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

(继承自 UIElement)
KeyTipHorizontalOffset

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

(继承自 UIElement)
KeyTipPlacementMode

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

(继承自 UIElement)
KeyTipTarget

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

(继承自 UIElement)
KeyTipVerticalOffset

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

(继承自 UIElement)
Language

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

(继承自 FrameworkElement)
LightDismissOverlayMode

获取或设置一个值,该值指定是否将 浅色消除 UI 外部的区域变暗。

LightDismissOverlayModeProperty

标识 LightDismissOverlayMode 依赖属性。

Lights

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

(继承自 UIElement)
ManipulationMode

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

(继承自 UIElement)
Margin

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

(继承自 FrameworkElement)
MaxHeight

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

(继承自 FrameworkElement)
MaxSuggestionListHeight

获取或设置 AutoSuggestBox 控件的下拉部分的最大高度。

MaxSuggestionListHeightProperty

标识 MaxSuggestionListHeight 依赖属性。

MaxWidth

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

(继承自 FrameworkElement)
MinHeight

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

(继承自 FrameworkElement)
MinWidth

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

(继承自 FrameworkElement)
Name

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

(继承自 FrameworkElement)
Opacity

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

(继承自 UIElement)
OpacityTransition

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

(继承自 UIElement)
Padding

获取或设置控件内部的填充边距。

(继承自 Control)
Parent

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

(继承自 FrameworkElement)
PlaceholderText

获取或设置要显示在 控件中的占位符文本。

PlaceholderTextProperty

标识 PlaceholderText 依赖属性。

PointerCaptures

获取所有捕获的指针的集合,表示为 Pointer 值。

(继承自 UIElement)
Projection

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

(继承自 UIElement)
QueryIcon

获取或设置单击以启动查询的按钮的图形内容。

QueryIconProperty

标识 QueryIcon 依赖属性。

RenderSize

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

(继承自 UIElement)
RenderTransform

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

(继承自 UIElement)
RenderTransformOrigin

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

(继承自 UIElement)
RequestedTheme

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

(继承自 FrameworkElement)
RequiresPointer

获取或设置 UI 元素是否支持鼠标模式,该模式模拟非指针输入设备(如游戏板或遥控器)的指针交互体验。

(继承自 Control)
Resources

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

(继承自 FrameworkElement)
Rotation

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

(继承自 UIElement)
RotationAxis

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

(继承自 UIElement)
RotationTransition

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

(继承自 UIElement)
Scale

获取或设置元素的刻度。 相对于元素的 CenterPoint 缩放。 影响元素的呈现位置。

(继承自 UIElement)
ScaleTransition

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

(继承自 UIElement)
Shadow

获取或设置元素投射的阴影效果。

(继承自 UIElement)
Style

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

(继承自 FrameworkElement)
TabFocusNavigation

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

(继承自 UIElement)
TabIndex

获取或设置一个值,该值指示当用户使用 Tab 键在应用 UI 中导航时元素接收焦点的顺序。

(继承自 Control)
TabNavigation

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

注意

对于Windows 10 创意者更新 (内部版本 10.0.15063) 及更新版本,TabFocusNavigation 属性在 UIElement 基类上可用,以包括不使用 ControlTemplate 的选项卡序列中的对象。

(继承自 Control)
Tag

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

(继承自 FrameworkElement)
Template

获取或设置控件模板。 控件模板在 UI 中定义控件的视觉外观,并在 XAML 标记中定义。

(继承自 Control)
Text

获取或设置控件中显示的文本。

TextBoxStyle

获取或设置自动建议文本框的样式。

TextBoxStyleProperty

标识 TextBoxStyle 依赖属性。

TextMemberPath

获取或设置属性路径,该路径用于获取要在 AutoSuggestBox 控件的文本框部分显示的值(当选择某个项目时)。

TextMemberPathProperty

标识 TextMemberPath 依赖属性。

TextProperty

标识 PlaceholderText 依赖属性。

Transform3D

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

(继承自 UIElement)
TransformMatrix

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

(继承自 UIElement)
Transitions

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

(继承自 UIElement)
Translation

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

(继承自 UIElement)
TranslationTransition

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

(继承自 UIElement)
Triggers

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

(继承自 FrameworkElement)
UIContext

获取 元素的上下文标识符。

(继承自 UIElement)
UpdateTextOnSelect

TextMemberPath 一起使用时,获取或设置一个值,该值指示视图中的项目在单击时是否会触发 AutoSuggestBox 的可编辑文本部分的更新。

UpdateTextOnSelectProperty

标识 UpdateTextOnSelect 依赖属性。

UseLayoutRounding

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

(继承自 UIElement)
UseSystemFocusVisuals

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

(继承自 Control)
VerticalAlignment

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

(继承自 FrameworkElement)
VerticalContentAlignment

获取或设置控件内容的垂直对齐方式。

(继承自 Control)
Visibility

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

(继承自 UIElement)
Width

获取或设置 FrameworkElement 的宽度。

(继承自 FrameworkElement)
XamlRoot

获取或设置 XamlRoot 在其中查看此元素的 。

(继承自 UIElement)
XYFocusDown

获取或设置当用户按下方向键 (方向键) 时获得焦点的对象。

(继承自 Control)
XYFocusDownNavigationStrategy

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

(继承自 UIElement)
XYFocusKeyboardNavigation

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

(继承自 UIElement)
XYFocusLeft

获取或设置当用户向左按方向键 (方向键) 时获得焦点的对象。

(继承自 Control)
XYFocusLeftNavigationStrategy

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

(继承自 UIElement)
XYFocusRight

获取或设置当用户向右按方向键 (方向键时获得焦点的对象) 。

(继承自 Control)
XYFocusRightNavigationStrategy

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

(继承自 UIElement)
XYFocusUp

获取或设置当用户按下方向键 (方向键) 时获得焦点的对象。

(继承自 Control)
XYFocusUpNavigationStrategy

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

(继承自 UIElement)

方法

AddHandler(RoutedEvent, Object, Boolean)

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

(继承自 UIElement)
ApplyTemplate()

加载相关的控件模板,以便可以引用其部件。

(继承自 Control)
Arrange(Rect)

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

(继承自 UIElement)
ArrangeOverride(Size)

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

(继承自 FrameworkElement)
CancelDirectManipulations()

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

(继承自 UIElement)
CapturePointer(Pointer)

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

(继承自 UIElement)
ClearContainerForItemOverride(DependencyObject, Object)

撤消 PrepareContainerForItemOverride 方法的效果。

(继承自 ItemsControl)
ClearValue(DependencyProperty)

清除依赖属性的本地值。

(继承自 DependencyObject)
ContainerFromIndex(Int32)

返回 ItemCollection 中指定索引处的项的容器。

(继承自 ItemsControl)
ContainerFromItem(Object)

返回与指定项对应的容器。

(继承自 ItemsControl)
FindName(String)

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

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

使 UIElement 子类能够公开有助于解析触摸目标的子元素。

(继承自 UIElement)
Focus(FocusState)

尝试在控件上设置焦点。

(继承自 Control)
GetAnimationBaseValue(DependencyProperty)

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

(继承自 DependencyObject)
GetBindingExpression(DependencyProperty)

返回 BindingExpression ,它代表指定属性上的绑定。

(继承自 FrameworkElement)
GetChildrenInTabFocusOrder()

允许 UIElement 子类公开参与 Tab 焦点的子元素。

(继承自 UIElement)
GetContainerForItemOverride()

创建或标识用于显示给定项的元素。

(继承自 ItemsControl)
GetTemplateChild(String)

检索实例化 ControlTemplate 可视化树中的命名元素。

(继承自 Control)
GetValue(DependencyProperty)

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

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

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

(继承自 FrameworkElement)
GroupHeaderContainerFromItemContainer(DependencyObject)

返回与指定的容器元素对应的组标头容器。

(继承自 ItemsControl)
IndexFromContainer(DependencyObject)

返回具有指定生成的容器的项的索引。

(继承自 ItemsControl)
InvalidateArrange()

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

(继承自 UIElement)
InvalidateMeasure()

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

(继承自 UIElement)
InvalidateViewport()

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

(继承自 FrameworkElement)
IsItemItsOwnContainerOverride(Object)

确定指定的项是 (还是有资格) 自己的容器。

(继承自 ItemsControl)
ItemFromContainer(DependencyObject)

返回与指定的生成容器对应的项。

(继承自 ItemsControl)
Measure(Size)

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

(继承自 UIElement)
MeasureOverride(Size)

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

(继承自 FrameworkElement)
OnApplyTemplate()

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

(继承自 FrameworkElement)
OnBringIntoViewRequested(BringIntoViewRequestedEventArgs)

BringIntoViewRequested 事件发生之前调用。

(继承自 UIElement)
OnCharacterReceived(CharacterReceivedRoutedEventArgs)

CharacterReceived 事件发生之前调用。

(继承自 Control)
OnCreateAutomationPeer()

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

(继承自 UIElement)
OnDisconnectVisualChildren()

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

(继承自 UIElement)
OnDoubleTapped(DoubleTappedRoutedEventArgs)

DoubleTapped 事件发生之前调用。

(继承自 Control)
OnDragEnter(DragEventArgs)

DragEnter 事件发生之前调用。

(继承自 Control)
OnDragLeave(DragEventArgs)

DragLeave 事件发生之前调用。

(继承自 Control)
OnDragOver(DragEventArgs)

DragOver 事件发生之前调用。

(继承自 Control)
OnDrop(DragEventArgs)

Drop 事件发生之前调用。

(继承自 Control)
OnGotFocus(RoutedEventArgs)

GotFocus 事件发生之前调用。

(继承自 Control)
OnGroupStyleSelectorChanged(GroupStyleSelector, GroupStyleSelector)

GroupStyleSelector 属性的值更改时调用。

(继承自 ItemsControl)
OnHolding(HoldingRoutedEventArgs)

“保留 ”事件发生之前调用。

(继承自 Control)
OnItemContainerStyleChanged(Style, Style)

ItemContainerStyle 属性的值更改时调用。

(继承自 ItemsControl)
OnItemContainerStyleSelectorChanged(StyleSelector, StyleSelector)

ItemContainerStyleSelector 属性的值更改时调用。

(继承自 ItemsControl)
OnItemsChanged(Object)

Items 属性的值更改时调用。

(继承自 ItemsControl)
OnItemTemplateChanged(DataTemplate, DataTemplate)

ItemTemplate 属性的值更改时调用。

(继承自 ItemsControl)
OnItemTemplateSelectorChanged(DataTemplateSelector, DataTemplateSelector)

ItemTemplateSelector 属性的值更改时调用。

(继承自 ItemsControl)
OnKeyboardAcceleratorInvoked(KeyboardAcceleratorInvokedEventArgs)

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

(继承自 UIElement)
OnKeyDown(KeyRoutedEventArgs)

KeyDown 事件发生之前调用。

(继承自 Control)
OnKeyUp(KeyRoutedEventArgs)

KeyUp 事件发生之前调用。

(继承自 Control)
OnLostFocus(RoutedEventArgs)

LostFocus 事件发生之前调用。

(继承自 Control)
OnManipulationCompleted(ManipulationCompletedRoutedEventArgs)

ManipulationCompleted 事件发生之前调用。

(继承自 Control)
OnManipulationDelta(ManipulationDeltaRoutedEventArgs)

ManipulationDelta 事件发生之前调用。

(继承自 Control)
OnManipulationInertiaStarting(ManipulationInertiaStartingRoutedEventArgs)

ManipulationInertiaStarting 事件发生之前调用。

(继承自 Control)
OnManipulationStarted(ManipulationStartedRoutedEventArgs)

ManipulationStarted 事件发生之前调用。

(继承自 Control)
OnManipulationStarting(ManipulationStartingRoutedEventArgs)

ManipulationStarting 事件发生之前调用。

(继承自 Control)
OnPointerCanceled(PointerRoutedEventArgs)

PointerCanceled 事件发生之前调用。

(继承自 Control)
OnPointerCaptureLost(PointerRoutedEventArgs)

PointerCaptureLost 事件发生之前调用。

(继承自 Control)
OnPointerEntered(PointerRoutedEventArgs)

PointerEntered 事件发生之前调用。

(继承自 Control)
OnPointerExited(PointerRoutedEventArgs)

PointerExited 事件发生之前调用。

(继承自 Control)
OnPointerMoved(PointerRoutedEventArgs)

PointerMoved 事件发生之前调用。

(继承自 Control)
OnPointerPressed(PointerRoutedEventArgs)

PointerPressed 事件发生之前调用。

(继承自 Control)
OnPointerReleased(PointerRoutedEventArgs)

PointerReleased 事件发生之前调用。

(继承自 Control)
OnPointerWheelChanged(PointerRoutedEventArgs)

PointerWheelChanged 事件发生之前调用。

(继承自 Control)
OnPreviewKeyDown(KeyRoutedEventArgs)

PreviewKeyDown 事件发生之前调用。

(继承自 Control)
OnPreviewKeyUp(KeyRoutedEventArgs)

PreviewKeyUp 事件发生之前调用。

(继承自 Control)
OnProcessKeyboardAccelerators(ProcessKeyboardAcceleratorEventArgs)

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

(继承自 UIElement)
OnRightTapped(RightTappedRoutedEventArgs)

RightTapped 事件发生之前调用。

(继承自 Control)
OnTapped(TappedRoutedEventArgs)

点击 事件发生之前调用。

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

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

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

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

(继承自 UIElement)
PrepareContainerForItemOverride(DependencyObject, Object)

准备好指定的元素以显示指定的项。

(继承自 ItemsControl)
ReadLocalValue(DependencyProperty)

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

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

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

(继承自 DependencyObject)
ReleasePointerCapture(Pointer)

释放指针捕获,以便通过此 UIElement 捕获一个特定指针。

(继承自 UIElement)
ReleasePointerCaptures()

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

(继承自 UIElement)
RemoveFocusEngagement()

为游戏板/远程交互) 具有焦点参与 (的控件释放控件边界的焦点。

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

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

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

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

(继承自 FrameworkElement)
SetValue(DependencyProperty, Object)

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

(继承自 DependencyObject)
StartAnimation(ICompositionAnimationBase)

开始元素上的指定动画。

(继承自 UIElement)
StartBringIntoView()

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

(继承自 UIElement)
StartBringIntoView(BringIntoViewOptions)

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

(继承自 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)
FocusDisengaged

当焦点从游戏板/远程交互) 的控制边界 (释放时发生。

(继承自 Control)
FocusEngaged

当焦点限制在游戏板/远程交互) 的控制边界 (时发生。

(继承自 Control)
GettingFocus

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

(继承自 UIElement)
GotFocus

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

(继承自 UIElement)
Holding

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

(继承自 UIElement)
IsEnabledChanged

IsEnabled 属性更改时发生。

(继承自 Control)
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

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

(继承自 UIElement)
PointerReleased

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

(继承自 UIElement)
PointerWheelChanged

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

(继承自 UIElement)
PreviewKeyDown

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

(继承自 UIElement)
PreviewKeyUp

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

(继承自 UIElement)
ProcessKeyboardAccelerators

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

(继承自 UIElement)
QuerySubmitted

当用户提交搜索查询时发生。

RightTapped

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

(继承自 UIElement)
SizeChanged

ActualHeightActualWidth 属性更改 FrameworkElement 上的值时发生。

(继承自 FrameworkElement)
SuggestionChosen

在更新可编辑控件组件的文本内容之前引发。

Tapped

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

(继承自 UIElement)
TextChanged

在可编辑控件组件的文本内容更新后引发。

Unloaded

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

(继承自 FrameworkElement)

适用于

另请参阅