GridView 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示一个控件,该控件在行和列中显示数据项。
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class GridView : ListViewBase
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class GridView : ListViewBase
Public Class GridView
Inherits ListViewBase
<GridView .../>
-or-
<GridView ...>
oneOrMoreItems
</GridView>
- 继承
-
Object IInspectable DependencyObject UIElement FrameworkElement Control ItemsControl Selector ListViewBase GridView
- 属性
示例
提示
有关详细信息、设计指南和代码示例,请参阅 列表视图和网格视图。
WinUI 3 库应用包括大多数 WinUI 3 控件、特性和功能的交互式示例。 通过 Microsoft Store 获取应用,或在 GitHub 上获取源代码。
此处,GridView 绑定到名为 的cvsProjects
分组 CollectionViewSource。 每个组中各个项的外观由 ItemTemplate 定义。
ItemsPanel 指定组在 GridView 中的排列方式。
GroupStyle.Panel 指定各个项目在每个组中的排列方式。
GroupStyle.ContainerStyle 用于在每个组周围添加边框,并设置其最小大小和边距。
HidesIfEmpty 属性设置为 true 以隐藏任何空组。
<Page
x:Class="GroupedGridViewApp.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:GroupedGridViewApp"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Page.Resources>
<CollectionViewSource x:Name="cvsProjects" IsSourceGrouped="True"
ItemsPath="Activities"/>
</Page.Resources>
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<GridView ItemsSource="{Binding Source={StaticResource cvsProjects}}" MaxHeight="500">
<GridView.ItemTemplate>
<DataTemplate>
<StackPanel Margin="20">
<TextBlock Text="{Binding Name}" FontWeight="Bold"
Style="{StaticResource BaseTextBlockStyle}"/>
<TextBlock Text="{Binding DueDate}" TextWrapping="NoWrap"
Style="{StaticResource BodyTextBlockStyle}" />
<CheckBox Content="Complete" IsChecked="{Binding Complete}"
IsEnabled="False"/>
</StackPanel>
</DataTemplate>
</GridView.ItemTemplate>
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<ItemsWrapGrid MaximumRowsOrColumns="3"/>
</ItemsPanelTemplate>
</GridView.ItemsPanel>
<GridView.GroupStyle>
<GroupStyle HidesIfEmpty="True">
<GroupStyle.HeaderTemplate>
<DataTemplate>
<Grid Background="LightGray" Margin="0">
<TextBlock Text='{Binding Name}'
Foreground="Black" Margin="12"
Style="{StaticResource HeaderTextBlockStyle}"/>
</Grid>
</DataTemplate>
</GroupStyle.HeaderTemplate>
</GroupStyle>
</GridView.GroupStyle>
</GridView>
</Page>
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using Windows.UI.Xaml.Controls;
namespace GroupedGridViewApp
{
public sealed partial class MainPage : Page
{
DateTime startDate = DateTime.Now;
public MainPage()
{
this.InitializeComponent();
PopulateProjects();
}
private void PopulateProjects()
{
List<Project> Projects = new List<Project>();
Project newProject = new Project();
newProject.Name = "Project 1";
newProject.Activities.Add(new Activity()
{ Name = "Activity 1", Complete = true, DueDate = startDate.AddDays(4) });
newProject.Activities.Add(new Activity()
{ Name = "Activity 2", Complete = true, DueDate = startDate.AddDays(5) });
Projects.Add(newProject);
newProject = new Project();
newProject.Name = "Project 2";
newProject.Activities.Add(new Activity()
{ Name = "Activity A", Complete = true, DueDate = startDate.AddDays(2) });
newProject.Activities.Add(new Activity()
{ Name = "Activity B", Complete = false, DueDate = startDate.AddDays(3) });
Projects.Add(newProject);
newProject = new Project();
newProject.Name = "Project 3";
Projects.Add(newProject);
cvsProjects.Source = Projects;
}
}
public class Project
{
public Project()
{
Activities = new ObservableCollection<Activity>();
}
public string Name { get; set; }
public ObservableCollection<Activity> Activities { get; private set; }
}
public class Activity
{
public string Name { get; set; }
public DateTime DueDate { get; set; }
public bool Complete { get; set; }
public string Project { get; set; }
}
}
注解
提示
有关详细信息、设计指南和代码示例,请参阅 列表视图和网格视图。
使用 GridView 可显示可垂直滚动的行和列中的项集合。 数据水平堆叠,直到填满列,然后继续执行下一行。 对于占驻较多控件的每个项目(如照片库),当你需要为其显示丰富的视觉信息时,该控件很常用。
GridView 是 ItemsControl,因此它可以包含任何类型的项的集合。 若要填充视图,将项添加到 Items 集合,或者将 ItemsSource 属性设置为数据源。
默认情况下,数据项在 GridView 中显示为它绑定到的数据对象的字符串表示形式。 若要指定 GridView 中项的确切显示方式,请创建 DataTemplate 来定义用于显示单个项的控件的布局。 该布局中的控件可绑定到数据对象的属性,或者具有定义的嵌入内容。 将 DataTemplate 分配给 GridView 的 ItemTemplate 属性。 有关可在应用中使用的常见模板,请参阅 GridView 的项模板。
如果通过设置 ItemsSource 属性填充 GridView, 则 ItemTemplate 将应用于每个项。 如果直接填充 Items 集合,则仅当项不是 GridViewItem 时,才会应用 ItemTemplate。 在此示例中,模板应用于第一项,但不适用于第二项。
<GridView>
<GridView.ItemTemplate>
<DataTemplate>
<Grid>
<Border Background="LightGray" Height="200" Width="200">
<TextBlock Text="{Binding}"
FontSize="48" Foreground="Green"/>
</Border>
</Grid>
</DataTemplate>
</GridView.ItemTemplate>
<GridView.Items>
<x:String>One</x:String>
<GridViewItem>Two</GridViewItem>
</GridView.Items>
</GridView>
如果使用 GridView 显示大型数据集,请参阅 优化 ListView 和 GridView 以获取保持流畅且响应迅速的用户体验的提示。
注意
默认情况下,活动笔滚动/平移列表 (,如触摸、触摸板和被动笔) ,而不是执行选择。 如果应用应使用活动笔进行文本选择,则可以替代笔滚动行为。 有关详细信息,请参阅 ScrollViewer 类参考的 Pen 交互部分。
默认情况下,用户可以在 GridView 中选择单个项。 可以将 SelectionMode 属性设置为 ListViewSelectionMode 枚举值,以允许多选或禁用选择。 还可以更改 GridView 交互模式,使项响应用户单击时像按钮一样,而不是被选中。
此表显示了用户与 GridView 交互的方式,以及如何响应交互。
若要启用此交互: | 使用这些设置: | 处理此事件: | 使用此属性以获取选定的项目: |
---|---|---|---|
无交互 | SelectionMode = None、IsItemClickEnabled = False | N/A | N/A |
单选 | SelectionMode = Single,IsItemClickEnabled = False | SelectionChanged | SelectedItem、SelectedIndex |
连续多选 | SelectionMode = Multiple,IsItemClickEnabled = False | SelectionChanged | SelectedItems |
非连续多选 | SelectionMode = Extended,IsItemClickEnabled = False | SelectionChanged | SelectedItems |
单击 | SelectionMode = None,IsItemClickEnabled = True | ItemClick | N/A |
注意
PointerWheelChanged 事件不会从 GridView 升起。 这意味着,如果指针位于 GridView 上,则其中包含 GridView 的控件不会收到鼠标滚轮更改消息。 例如,如果将 GridView 置于 ScrollViewer 内,则当指针位于 GridView 上时,无法使用鼠标滚轮滚动 ScrollViewer。
注意
在 GridView 控件上设置 Padding 属性时, 将忽略右 填充的值;仅应用左、上和下边距的值。
GridView 支持数据虚拟化,以提高大型数据集的性能。 当数据源实现适当的接口时,支持随机访问虚拟化,这些接口因编程语言而异:
- Visual C++ 组件扩展 (C++/CX) 应用应实现 IObservableVector。
- C# 或 Visual Basic 应用应实现 INotifyCollectionChanged 和 System.Collections.IList (而不是 IList。 虚拟化需要这两个接口。 当数据源实现 ISupportIncrementalLoading 接口时,支持增量加载虚拟化。 支持增量加载时,可以使用这些成员来控制数据加载: DataFetchSize、 IncrementalLoadingThreshold、 IncrementalLoadingTrigger、 LoadMoreItemsAsync。
Windows 8 在 Windows 8 中,替换所选 GridViewItem 中的数据项时,不会清除 SelectedIndex 值。 在Windows 8.1或更高版本中,将清除 SelectedIndex 值。
GridView 实现 ISemanticZoomInformation 接口,因此它可以用作 SemanticZoom 控件中的视图。 在 SemanticZoom 控件中使用时,始终在 GridView 控件模板中的 ScrollViewer 上将 ScrollViewer.IsHorizontalScrollChainingEnabled attached 属性设置为 false,如下所示:。<GridView ScrollViewer.IsHorizontalScrollChainingEnabled="False">
仅当 GridView 托管在 SemanticZoom 控件中时,这些成员才有效:IsActiveView、IsZoomedInView、SemanticZoomOwner、CompleteViewChange、CompleteViewChangeFrom、CompleteViewChangeTo、InitializeViewChange、MakeVisible、StartViewChangeFrom、StartViewChangeTo。
GridView 的默认模板包括现有的过渡动画。 具体而言,默认 的 ItemContainerTransitions 值已包含 AddDeleteThemeTransition、 ContentThemeTransition、 ReorderThemeTransition 和 EntranceThemeTransition (的值,) IsStaggeringEnabled="False"
。 如果要为 GridView 上的 ItemContainerTransitions 设置新值,请考虑以重现这些相同的主题动画作为起点。 如果自行设置属性,则除非在定义中再次包含这些默认值,否则这些默认值将被覆盖。
如果需要处理可滚动视图 ((如 ScrollViewer) )中 UIElement 的指针事件,则必须通过调用 UIElement.CancelDirectmanipulation () 显式禁用对视图中元素的操作事件的支持。 若要在视图中重新启用操作事件,请调用 UIElement.TryStartDirectManipulation。
选择行为和 CollectionViewSource
派生自 选择器 的列表控件具有默认选择行为,具体取决于项源 (用于 ItemsSource) 的类型。 如果项源是 CollectionViewSource 实例,则选择控件中的行为是选择将默认为当前项。 首次显示列表时,所选内容默认为第一项作为当前项。 如果不希望在这种情况下选择第一项,请在 GridView 中将 IsSynchronizedWithCurrentItem 设置为 false 。
构造函数
GridView() |
初始化 GridView 类的新实例。 |
属性
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) |
Background |
获取或设置提供控件背景的画笔。 (继承自 Control) |
BackgroundSizing |
获取或设置一个值,该值指示背景相对于此元素边框的延伸程度。 (继承自 Control) |
BaseUri |
获取统一资源标识符 (URI) ,该 URI 表示 XAML 构造的对象在 XAML 加载时的基本 URI。 此属性可用于在运行时进行 URI 解析。 (继承自 FrameworkElement) |
BorderBrush |
获取或设置描述控件边框填充的画笔。 (继承自 Control) |
BorderThickness |
获取或设置控件的边框宽度。 (继承自 Control) |
CacheMode |
获取或设置一个值,该值指示呈现的内容应尽可能缓存为复合位图。 (继承自 UIElement) |
CanBeScrollAnchor |
获取或设置一个值,该值指示 UIElement 是否可以作为滚动定位的候选项。 (继承自 UIElement) |
CanDrag |
获取或设置一个值,该值指示是否可以在拖放操作中将元素作为数据拖动。 (继承自 UIElement) |
CanDragItems |
获取或设置一个值,该值指示视图中的项是否可以作为数据有效负载拖动。 (继承自 ListViewBase) |
CanReorderItems |
获取或设置一个值,该值指示视图中的项是否可以通过用户交互重新排序。 (继承自 ListViewBase) |
CenterPoint |
获取或设置元素的中心点,即发生旋转或缩放的点。 影响元素的呈现位置。 (继承自 UIElement) |
CharacterSpacing |
获取或设置字符之间的统一间距,单位为 1/1000 em。 (继承自 Control) |
Clip |
获取或设置用于定义 UIElement 内容的轮廓的 RectangleGeometry。 (继承自 UIElement) |
CompositeMode |
获取或设置一个属性,该属性为其父布局和窗口中的元素声明备用组合和混合模式。 这与混合 XAML/Microsoft DirectX UI 中涉及的元素相关。 (继承自 UIElement) |
ContextFlyout |
获取或设置与此元素关联的浮出控件。 (继承自 UIElement) |
CornerRadius |
获取或设置控件边框角的半径。 (继承自 Control) |
DataContext |
获取或设置 FrameworkElement 的数据上下文。 数据上下文的常见用途是,当 |
DataFetchSize |
获取或设置要为虚拟化/预提取操作提取的数据量。 (继承自 ListViewBase) |
DefaultStyleKey |
获取或设置引用控件的默认样式的键。 自定义控件的作者使用此属性更改其控件使用的样式的默认值。 (继承自 Control) |
DefaultStyleResourceUri |
获取或设置包含控件的默认样式的资源文件的路径。 (继承自 Control) |
DesiredSize |
获取此 UIElement 在布局过程的度量传递期间计算的大小。 (继承自 UIElement) |
Dispatcher |
始终在Windows 应用 SDK应用中返回 |
DispatcherQueue |
|
DisplayMemberPath |
获取或设置为每个数据项显示的属性的名称或路径。 (继承自 ItemsControl) |
ElementSoundMode |
获取或设置一个值,该值指定控件是否播放声音的首选项。 (继承自 Control) |
ExitDisplayModeOnAccessKeyInvoked |
获取或设置一个值,该值指定在调用访问密钥时是否消除访问键显示。 (继承自 UIElement) |
FlowDirection |
获取或设置文本和其他 UI 元素在控制其布局的任何父元素中的流动方向。 此属性可以设置为 |
FocusState |
获取一个值,该值指定此控件是否具有焦点以及获取焦点的模式。 (继承自 UIElement) |
FocusVisualMargin |
获取或设置 FrameworkElement 的焦点视觉对象的外部边距。 (继承自 FrameworkElement) |
FocusVisualPrimaryBrush |
获取或设置用于为 FrameworkElement 绘制或 |
FocusVisualPrimaryThickness |
获取或设置 FrameworkElement 或 |
FocusVisualSecondaryBrush |
获取或设置用于为 FrameworkElement 绘制或 |
FocusVisualSecondaryThickness |
获取或设置 FrameworkElement 或 |
FontFamily |
获取或设置用于显示控件中的文本的字体。 (继承自 Control) |
FontSize |
获取或设置此控件中文本的大小。 (继承自 Control) |
FontStretch |
获取或设置字体在屏幕上紧缩或加宽的程度。 (继承自 Control) |
FontStyle |
获取或设置呈现文本的样式。 (继承自 Control) |
FontWeight |
获取或设置指定字体的粗细。 (继承自 Control) |
Footer |
获取或设置列表页脚的内容。 (继承自 ListViewBase) |
FooterTemplate |
获取或设置用于显示视图页脚内容的 DataTemplate 。 (继承自 ListViewBase) |
FooterTransitions |
获取或设置应用于视图页脚的 Transition 样式元素的集合。 (继承自 ListViewBase) |
Foreground |
获取或设置一个用于描述前景色的画笔。 (继承自 Control) |
GroupStyle |
获取用于定义每个组级别外观的 GroupStyle 对象的集合。 (继承自 ItemsControl) |
GroupStyleSelector |
获取或设置对自定义 GroupStyleSelector 逻辑类的引用。 GroupStyleSelector 根据内容的特征返回要用于内容的不同 GroupStyle 值。 (继承自 ItemsControl) |
Header |
获取或设置列表标头的内容。 (继承自 ListViewBase) |
HeaderTemplate |
获取或设置用于显示视图标头内容的 DataTemplate 。 (继承自 ListViewBase) |
HeaderTransitions |
获取或设置应用于视图标题的 Transition 样式元素的集合。 (继承自 ListViewBase) |
Height |
获取或设置 FrameworkElement 的建议高度。 (继承自 FrameworkElement) |
HighContrastAdjustment |
获取或设置一个值,该值指示在启用高对比度主题时框架是否自动调整元素的视觉属性。 (继承自 UIElement) |
HorizontalAlignment |
获取或设置在布局父级(如面板或项控件)中组合时应用于 FrameworkElement 的水平对齐特征。 (继承自 FrameworkElement) |
HorizontalContentAlignment |
获取或设置控件内容的水平对齐方式。 (继承自 Control) |
IncrementalLoadingThreshold |
获取或设置阈值范围,该范围控制 ListViewBase 类何时开始预提取更多项。 (继承自 ListViewBase) |
IncrementalLoadingTrigger |
获取或设置一个值,该值指示 ListViewBase 类的预提取操作的条件。 (继承自 ListViewBase) |
IsAccessKeyScope |
获取或设置一个值,该值指示元素是否定义其自己的访问键范围。 (继承自 UIElement) |
IsActiveView |
获取或设置一个值,该值指示 ListViewBase 实例是否是其自己的 SemanticZoom 中的活动视图。 (继承自 ListViewBase) |
IsDoubleTapEnabled |
获取或设置一个值,该值确定 DoubleTapped 事件是否可以源自该元素。 (继承自 UIElement) |
IsEnabled |
获取或设置一个值,该值指示用户是否可以与控件交互。 (继承自 Control) |
IsFocusEngaged |
获取或设置一个值,该值指示当用户按下游戏控制器上的 A/选择按钮时,焦点是否受限于控件。 (继承自 Control) |
IsFocusEngagementEnabled |
获取或设置一个值,该值指示当用户按下游戏控制器上的 A/选择按钮时是否可以将焦点限制在控件上。 (继承自 Control) |
IsGrouping |
获取一个值,该值指示控件是否正在使用分组。 (继承自 ItemsControl) |
IsHitTestVisible |
获取或设置此 UIElement 的包含区域是否可以为命中测试返回 true 值。 (继承自 UIElement) |
IsHoldingEnabled |
获取或设置一个值,该值确定 Holding 事件是否可以源自该元素。 (继承自 UIElement) |
IsItemClickEnabled |
获取或设置一个值,该值指示视图中的项目是否触发 ItemClick 事件以响应交互。 (继承自 ListViewBase) |
IsLoaded |
获取一个值,该值指示是否已将元素添加到元素树中并准备好进行交互。 (继承自 FrameworkElement) |
IsMultiSelectCheckBoxEnabled |
获取或设置一个值,该值指示是否显示检查框以启用多选。 (继承自 ListViewBase) |
IsRightTapEnabled |
获取或设置一个值,该值确定 RightTapped 事件是否可以源自该元素。 (继承自 UIElement) |
IsSwipeEnabled |
获取或设置一个值,该值指示视图是否支持 对轻扫 交互进行离散输入处理。 (继承自 ListViewBase) |
IsSynchronizedWithCurrentItem |
获取或设置一个值,该值指示 选择器 是否应使 SelectedItem 与 Items 属性中的当前项保持同步。 (继承自 Selector) |
IsTabStop |
获取或设置一个值,该值指示是否将某个控件包含在 Tab 导航中。 (继承自 UIElement) |
IsTapEnabled |
获取或设置一个值,该值确定 Tapped 事件是否可以源自该元素。 (继承自 UIElement) |
IsTextScaleFactorEnabled |
获取或设置是否启用自动文本放大,以反映系统文本大小设置。 (继承自 Control) |
IsZoomedInView |
获取或设置一个值,该值指示 ListViewBase 实例是否是其所属 SemanticZoom 中的放大视图。 (继承自 ListViewBase) |
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 |
获取使用键盘调用操作的组合键的集合。 加速器通常分配给按钮或菜单项。
|
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) |
Name |
获取或设置 对象的标识名称。 当 XAML 处理器从 XAML 标记创建对象树时,运行时代码可以按此名称引用 XAML 声明的对象。 (继承自 FrameworkElement) |
Opacity |
获取或设置对象的不透明度程度。 (继承自 UIElement) |
OpacityTransition |
获取或设置对 Opacity 属性的更改进行动画处理的 ScalarTransition。 (继承自 UIElement) |
Padding |
获取或设置控件内部的填充边距。 (继承自 Control) |
Parent |
获取对象树中此 FrameworkElement 的父对象。 (继承自 FrameworkElement) |
PointerCaptures |
获取所有捕获的指针的集合,表示为 Pointer 值。 (继承自 UIElement) |
Projection |
获取或设置呈现此元素时要应用的透视投影 (三维效果) 。 (继承自 UIElement) |
ProtectedCursor |
获取或设置当指针位于此元素上时显示的光标。 默认为 null,表示游标没有更改。 (继承自 UIElement) |
RasterizationScale |
获取一个值,该值表示每个视图像素的原始 (物理) 像素数。 (继承自 UIElement) |
RenderSize |
获取 UIElement 的最终呈现大小。 不建议使用,请参阅备注。 (继承自 UIElement) |
RenderTransform |
获取或设置影响 UIElement 呈现位置的转换信息。 (继承自 UIElement) |
RenderTransformOrigin |
获取或设置 RenderTransform 声明的任何可能呈现转换相对于 UIElement 边界的原点。 (继承自 UIElement) |
ReorderMode |
获取或设置 ListViewBase 实例的重新排序行为。 启用后,可以通过用户操作对未排序和未组合的列表进行重新排序。 (继承自 ListViewBase) |
RequestedTheme |
获取或设置 UIElement (使用的 UI 主题及其子元素) 资源确定。 使用 |
RequiresPointer |
获取或设置 UI 元素是否支持鼠标模式,该模式模拟与非指针输入设备(如键盘或游戏控制器)的指针交互体验。 (继承自 Control) |
Resources |
获取本地定义的资源字典。 在 XAML 中,可以通过 XAML 隐式集合语法将资源项建立为 property 元素的 |
Rotation |
获取或设置顺时针旋转的角度(以度为单位)。 相对于 RotationAxis 和 CenterPoint 旋转。 影响元素的呈现位置。 (继承自 UIElement) |
RotationAxis |
获取或设置旋转元素的轴。 (继承自 UIElement) |
RotationTransition |
获取或设置 ScalarTransition,该 ScalarTransition 对 Rotation 属性的更改进行动画处理。 (继承自 UIElement) |
Scale |
获取或设置 元素的刻度。 相对于元素的 CenterPoint 缩放。 影响元素的呈现位置。 (继承自 UIElement) |
ScaleTransition |
获取或设置 Vector3Transition,该 Vector3Transition 对 Scale 属性的更改进行动画处理。 (继承自 UIElement) |
SelectedIndex |
获取或设置所选项的索引。 (继承自 Selector) |
SelectedItem |
获取或设置选定项。 (继承自 Selector) |
SelectedItems |
获取当前选定的项。 (继承自 ListViewBase) |
SelectedRanges |
获取描述列表中当前所选项的 ItemIndexRange 对象的集合。 (继承自 ListViewBase) |
SelectedValue |
获取或设置使用 SelectedValuePath 获取的选定项的值。 (继承自 Selector) |
SelectedValuePath |
获取或设置用于获取 SelectedItem 属性的 SelectedValue 属性的属性路径。 (继承自 Selector) |
SelectionMode |
获取或设置 ListViewBase 实例的选择行为。 (继承自 ListViewBase) |
SemanticZoomOwner |
获取或设置托管 ListViewBase 的 SemanticZoom 实例。 (继承自 ListViewBase) |
Shadow |
获取或设置 由 元素投射的阴影效果。 (继承自 UIElement) |
ShowsScrollingPlaceholders |
获取或设置一个值,该值指示视图在滚动期间是否显示项的占位符 UI。 (继承自 ListViewBase) |
SingleSelectionFollowsFocus |
获取或设置一个值,该值指示键盘焦点更改时项目选择是否更改。 (继承自 ListViewBase) |
Style |
获取或设置在布局和呈现期间为此对象应用的实例 Style 。 (继承自 FrameworkElement) |
TabFocusNavigation |
获取或设置一个值,该值修改 tabbing 和 TabIndex 对此控件的工作方式。 (继承自 UIElement) |
TabIndex |
获取或设置一个值,该值确定当用户使用 Tab 键浏览控件时元素接收焦点的顺序。 (继承自 UIElement) |
TabNavigation |
获取或设置一个值,该值修改 tabbing 和 UIElement.TabIndex 对此控件的工作方式。 注意 对于Windows 10 创意者更新 (内部版本 10.0.15063) 及更新版本,TabFocusNavigation 属性在 UIElement 基类上可用,以包括选项卡序列中不使用 ControlTemplate 的对象。 |
Tag |
获取或设置可用于存储有关此对象的自定义信息的任意对象值。 (继承自 FrameworkElement) |
Template |
获取或设置控件模板。 控件模板在 UI 中定义控件的视觉外观,并在 XAML 标记中定义。 (继承自 Control) |
Transform3D |
获取或设置呈现此元素时要应用的三维转换效果。 (继承自 UIElement) |
TransformMatrix |
获取或设置要应用于 元素的转换矩阵。 (继承自 UIElement) |
Transitions |
获取或设置应用于 UIElement 的 Transition 样式元素的集合。 (继承自 UIElement) |
Translation |
获取或设置元素的 x、y 和 z 呈现位置。 (继承自 UIElement) |
TranslationTransition |
获取或设置对 Translation 属性的更改进行动画处理的 Vector3Transition。 (继承自 UIElement) |
Triggers |
获取为 FrameworkElement 定义的动画触发器的集合。 不常用。 请参阅“备注”。 (继承自 FrameworkElement) |
UseLayoutRounding |
获取或设置一个值,该值确定对象及其可视子树的呈现是否应使用将呈现与整个像素对齐的舍入行为。 (继承自 UIElement) |
UseSystemFocusVisuals |
获取或设置一个值,该值指示控件是使用系统绘制的焦点视觉对象还是控件模板中定义的焦点视觉对象。 (继承自 UIElement) |
VerticalAlignment |
获取或设置当 FrameworkElement 在父对象(如面板或项目控件)中组合时应用于它的垂直对齐特征。 (继承自 FrameworkElement) |
VerticalContentAlignment |
获取或设置控件内容的垂直对齐方式。 (继承自 Control) |
Visibility |
获取或设置 UIElement 的可见性。
|
Width |
获取或设置 FrameworkElement 的宽度。 (继承自 FrameworkElement) |
XamlRoot |
获取或设置 |
XYFocusDown |
获取或设置当用户按下游戏控制器的方向盘 (方向键) 时获得焦点的对象。 (继承自 UIElement) |
XYFocusDownNavigationStrategy |
获取或设置一个值,该值指定用于确定向下导航的目标元素的策略。 (继承自 UIElement) |
XYFocusKeyboardNavigation |
获取或设置一个值,该值使用键盘方向箭头启用或禁用导航。 (继承自 UIElement) |
XYFocusLeft |
获取或设置当用户在游戏控制器的方向键 (方向键) 左键时获得焦点的对象。 (继承自 UIElement) |
XYFocusLeftNavigationStrategy |
获取或设置一个值,该值指定用于确定左侧导航的目标元素的策略。 (继承自 UIElement) |
XYFocusRight |
获取或设置当用户在游戏控制器的方向盘 (方向键) 上按下时获得焦点的对象。 (继承自 UIElement) |
XYFocusRightNavigationStrategy |
获取或设置一个值,该值指定用于确定右导航目标元素的策略。 (继承自 UIElement) |
XYFocusUp |
获取或设置当用户按下游戏控制器的方向键 (方向键) 时获得焦点的对象。 (继承自 UIElement) |
XYFocusUpNavigationStrategy |
获取或设置一个值,该值指定用于确定向上导航目标元素的策略。 (继承自 UIElement) |
方法
事件
AccessKeyDisplayDismissed |
在不应再显示访问密钥时发生。 (继承自 UIElement) |
AccessKeyDisplayRequested |
当用户请求显示访问密钥时发生。 (继承自 UIElement) |
AccessKeyInvoked |
当用户完成访问键序列时发生。 (继承自 UIElement) |
ActualThemeChanged |
在 ActualTheme 属性值更改时发生。 (继承自 FrameworkElement) |
BringIntoViewRequested |
在此元素或其后代之一上调用 StartBringIntoView 时发生。 (继承自 UIElement) |
CharacterReceived |
输入队列收到单个组合字符时发生。 (继承自 UIElement) |
ChoosingGroupHeaderContainer |
当要为数据组选择项容器时发生。 (继承自 ListViewBase) |
ChoosingItemContainer |
当要为数据项选择项容器时发生。 (继承自 ListViewBase) |
ContainerContentChanging |
当与 UI 容器关联的数据项发生更改时发生。 (继承自 ListViewBase) |
ContextCanceled |
当上下文输入手势继续为操作手势时发生,以通知元素不应打开上下文浮出控件。 (继承自 UIElement) |
ContextRequested |
当用户完成上下文输入手势(例如右键单击)时发生。 (继承自 UIElement) |
DataContextChanged |
在 FrameworkElement.DataContext 属性的值更改时发生。 (继承自 FrameworkElement) |
DoubleTapped |
在此元素的命中测试区域上发生未经处理的 DoubleTap 交互时发生。 (继承自 UIElement) |
DragEnter |
当输入系统报告将此元素作为目标的基础拖动事件时发生。 (继承自 UIElement) |
DragItemsCompleted |
当涉及视图中某个项的拖动操作结束时发生。 (继承自 ListViewBase) |
DragItemsStarting |
在启动涉及视图中某个项的拖动操作时发生。 (继承自 ListViewBase) |
DragLeave |
当输入系统报告将此元素作为原点的基础拖动事件时发生。 (继承自 UIElement) |
DragOver |
在输入系统报告出现以此元素为可能放置目标的基础拖动事件时发生。 (继承自 UIElement) |
DragStarting |
在启动拖动操作时发生。 (继承自 UIElement) |
Drop |
在输入系统报告出现将此元素作为放置目标的基础放置事件时发生。 (继承自 UIElement) |
DropCompleted |
结束此元素作为源的拖放操作时发生。 (继承自 UIElement) |
EffectiveViewportChanged |
在 FrameworkElement的有效视区 更改时发生。 (继承自 FrameworkElement) |
FocusDisengaged |
当用户按下游戏控制器上的 B/后退按钮时,焦点从控件释放时发生。 (继承自 Control) |
FocusEngaged |
当用户按下游戏控制器上的 A/选择按钮时,焦点被限制在控件上时发生。 (继承自 Control) |
GettingFocus |
在 UIElement 接收焦点之前发生。 此事件是同步引发的,以确保在事件冒泡时不会移动焦点。 (继承自 UIElement) |
GotFocus |
在 UIElement 接收焦点时发生。 此事件以异步方式引发,因此焦点可以在冒泡完成之前再次移动。 (继承自 UIElement) |
Holding |
在此元素的命中测试区域上发生未处理的 保留 交互时发生。 (继承自 UIElement) |
IsEnabledChanged |
在 IsEnabled 属性更改时发生。 (继承自 Control) |
ItemClick |
当列表视图中的项收到交互并且 IsItemClickEnabled 属性为 true 时发生。 (继承自 ListViewBase) |
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 |
在释放之前启动 Press 操作的指针设备时发生,而此元素中。 请注意, 不保证“按下 ”操作的结束会触发 |
PointerWheelChanged |
当指针滚轮的增量值更改时发生。 (继承自 UIElement) |
PreviewKeyDown |
在 UIElement 具有焦点时按下键盘键时发生。 (继承自 UIElement) |
PreviewKeyUp |
在 UIElement 具有焦点时释放键盘键时发生。 (继承自 UIElement) |
ProcessKeyboardAccelerators |
按下 键盘快捷方式 (或快捷键) 时发生。 (继承自 UIElement) |
RightTapped |
当指针位于 元素上时发生右点击输入刺激时发生。 (继承自 UIElement) |
SelectionChanged |
在当前所选项更改时发生。 (继承自 Selector) |
SizeChanged |
当 ActualHeight 或 ActualWidth 属性更改 FrameworkElement 上的值时发生。 (继承自 FrameworkElement) |
Tapped |
在此元素的命中测试区域上发生其他未经处理的 点击 交互时发生。 (继承自 UIElement) |
Unloaded |
当此对象不再连接到main对象树时发生。 (继承自 FrameworkElement) |