Grid 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
定义由列和行组成的灵活网格区域。 网格的子元素根据其行/列分配(通过使用 Grid.Row 和 Grid.Column 附加属性设置)和其他逻辑进行度量和排列。
/// [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 Grid : Panel
[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 Grid : Panel
Public Class Grid
Inherits Panel
<Grid ...>
oneOrMoreUIElements
</Grid>
-or-
<Grid .../>
- 继承
- 派生
- 属性
示例
小窍门
有关详细信息、设计指南和代码示例,请参阅 “布局”面板。
WinUI 3 示例集应用程序包括大多数 WinUI 3 控件、特性和功能的交互式示例。 从 Microsoft 应用商店 获取应用,或在 GitHub 上获取源代码。
此 XAML 示例演示如何使用网格设计布局。
<Grid x:Name="LayoutRoot" Background="#555555"
Width="400" Height="300"
ColumnDefinitions="250, 150"
RowDefinitions="Auto, 2*, *">
<TextBlock Grid.Row="0" Grid.Column="0"
Grid.ColumnSpan="2"
Margin="10" FontWeight="Bold"
Text="Contoso Corporation"
HorizontalAlignment="Center"
VerticalAlignment="Center" />
<Grid x:Name="FormLayoutGrid" Grid.Row="1" Grid.Column="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="*" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" Grid.Column="0" Text="First Name" Margin="10"
HorizontalAlignment="Left" VerticalAlignment="Center" />
<TextBox Grid.Row="0" Grid.Column="1" Margin="10" />
<TextBlock Grid.Row="1" Grid.Column="0" Text="Last Name" Margin="10"
HorizontalAlignment="Left" VerticalAlignment="Center" />
<TextBox Grid.Row="1" Grid.Column="1" Margin="10" />
<TextBlock Grid.Row="2" Grid.Column="0" Text="Address" Margin="10"
HorizontalAlignment="Left" VerticalAlignment="Center" />
<TextBox Grid.Row="2" Grid.Column="1" Margin="10" />
</Grid>
</Grid>
public MainPage()
{
this.InitializeComponent();
LayoutDesign();
}
private void LayoutDesign()
{
//Create Stackpanel for ListBox Control and its description
StackPanel DeptStackPanel = new StackPanel();
DeptStackPanel.Margin = new Thickness(10);
LayoutRoot.Children.Add(DeptStackPanel);
Grid.SetColumn(DeptStackPanel, 1);
Grid.SetRow(DeptStackPanel, 1);
TextBlock DeptListHeading = new TextBlock();
DeptListHeading.Text = "Department";
ListBox DeptList = new ListBox();
DeptList.Items.Add("Finance");
DeptList.Items.Add("Marketing");
DeptList.Items.Add("Human Resources");
DeptList.Items.Add("Payroll");
DeptStackPanel.Children.Add(DeptListHeading);
DeptStackPanel.Children.Add(DeptList);
//Create StackPanel for buttons
StackPanel ButtonsStackPanel = new StackPanel();
ButtonsStackPanel.Margin = new Thickness(10);
ButtonsStackPanel.Orientation = Orientation.Horizontal;
ButtonsStackPanel.HorizontalAlignment = HorizontalAlignment.Center;
LayoutRoot.Children.Add(ButtonsStackPanel);
Grid.SetColumn(ButtonsStackPanel, 0);
Grid.SetRow(ButtonsStackPanel, 2);
Grid.SetColumnSpan(ButtonsStackPanel, 2);
Button BackButton = new Button();
BackButton.Content = "Back";
BackButton.Width = 100;
Button CancelButton = new Button();
CancelButton.Content = "Cancel";
CancelButton.Width = 100;
Button NextButton = new Button();
NextButton.Content = "Next";
NextButton.Width = 100;
ButtonsStackPanel.Children.Add(BackButton);
ButtonsStackPanel.Children.Add(CancelButton);
ButtonsStackPanel.Children.Add(NextButton);
BackButton.Margin = new Thickness(10);
CancelButton.Margin = new Thickness(10);
NextButton.Margin = new Thickness(10);
}
}
注解
小窍门
有关详细信息、设计指南和代码示例,请参阅 “布局”面板。
网格是一个布局面板,支持在行和列中排列子元素。
通常通过在 XAML 中将一个或多个 RowDefinition 元素作为 Grid.RowDefinitions 的值,以及一个或多个 ColumnDefinition 元素作为 Grid.ColumnDefinitions 的值来定义网格的布局行为。 然后,将 Grid.Row 和 Grid.Column 附加属性应用于网格的每个元素子级,以指示哪个行/列组合用于将该元素放置在父网格中。
若要设置行的高度和列的宽度,请为每个 RowDefinition 和 ColumnDefinition.Width 设置RowDefinition.Height。 ColumnDefinition.Width 和 RowDefinition.Height 是 ColumnDefinition 和 RowDefinition 的相应内容属性。
默认情况下,每行或列将布局空间相等。 可以通过提供绝对像素值或使用加权因子划分可用空间的 星 型大小来更改此行为。 有关如何在网格中使用星型调整的详细信息,请参阅使用 XAML 或 GridLength定义布局。 还可以使用大小为内容的 自动 调整大小。
请注意,有两种方法可以定义网格。 如果只是在不使用数据绑定或定义属性(如 MinHeight 或 MaxWidth) 的情况下 定义行和列,则可以使用以下简洁语法:
<Grid ColumnDefinitions="1*, 2*, Auto, 5"
RowDefinitions="1*, Auto, 5, 3, 1">
<!-- Grid content goes here -->
</Grid>
如果需要在网格定义中添加更多详细信息,例如在行/列定义中提供行的 MaxHeight 或使用数据绑定,则应使用原始的完整网格语法:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition MaxWidth="30"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="{x:Bind RowHeight}"/>
<RowDefinition Height="{x:Bind RowHeight}"/>
</Grid.RowDefinitions>
<!-- Grid content goes here -->
</Grid>
若要指示元素子元素应跨越网格中的多行或多列,可以将 Grid.RowSpan 或 Grid.ColumnSpan 附加属性应用于 Grid 的子元素。
默认情况下,网格包含一行和一列。
设置 Grid 中子元素的 Margin 属性设置元素与其网格单元格边界之间的距离。 HorizontalAlignment 和 VerticalAlignment 属性描述子元素应如何定位在网格单元格中。 通过使用 Margin 属性和对齐属性的组合,可以精确定位网格的子元素。 如果需要更好地控制单个子元素的布局,请考虑使用 VariableSizedWrapGrid。
WrapGrid 是另一个类似的布局面板,它有利于更好地处理过于宽的内容,根据其他布局属性的值,常规网格可能会剪裁。
跨多行的第一列中的元素可能会影响每个跨行的高度,即使第一行具有足够的高度来容纳元素,后续跨行的高度也会为 0。 例如,此网格中的第二行的高度设置为 0,因此蓝色矩形通常不可见。 在这种情况下,你可能预计红色椭圆不会影响第二行,因为第一行足够高,足以包含椭圆。 但是,网格计算每行的 MinHeight,足以容纳红色椭圆,然后跨行跨元素。 因此,第二行的 MinHeight 为 50,红色椭圆以 150px 跨度居中,蓝色矩形的一半显示在第二行中。
Note
(此示例使用跨列的元素,但也适用于跨多行的第一列中的元素。
<Grid Background="Yellow" Width="300"
ColumnDefinitions="50, *" RowDefinitions="Auto, 0">
<Ellipse Grid.Row="0" Grid.Column="0" Height="50" Fill="Red" Grid.RowSpan="2"/>
<Rectangle Grid.Row="0" Grid.Column="1" Fill="Green" Height="100"/>
<Rectangle Grid.Row="1" Grid.Column="1" Fill="Blue" Height="100"/>
</Grid>
边框属性
网格定义边框属性,使你可以在网格周围绘制边框,而无需使用其他 Border 元素。 这些属性包括 Grid.BorderBrush、 Grid.BorderThickness、 Grid.CornerRadius 和 Grid.Padding。
<Grid BorderBrush="Red" BorderThickness="2" CornerRadius="10" Padding="12">
<TextBlock Text="Hello World!"/>
</Grid>
网格 派生类
Grid 是 SwapChainPanel 和 SwapChainBackgroundPanel 的父类。
XAML 附加属性
Grid 是多个 XAML 附加属性的主机服务类。 这些附加属性使子元素能够报告它们应如何定位在其 Grid 父级中。
为了支持对附加属性的 XAML 处理器访问,并且为了向代码公开等效 的 get 和 set 操作,每个 XAML 附加属性都有一对 Get 和 Set 访问器方法。 获取或设置代码中的值的另一种方法是使用依赖属性系统,调用 GetValue 或 SetValue 并将标识符字段作为依赖属性标识符传递。
| Attached 属性 | Description |
|---|---|
| 列 | 获取或设置父网格布局容器处理子布局时元素的列对齐方式。
|
| ColumnSpan | 获取或设置一个值,该值指示元素内容在父网格中跨越的列总数。
|
| 行 | 获取或设置父网格布局容器处理子布局时元素的行对齐方式。
|
| RowSpan | 获取或设置一个值,该值指示元素内容在父网格中跨越的行总数。
|
构造函数
| 名称 | 说明 |
|---|---|
| Grid() |
初始化 Grid 类的新实例。 |
属性
| 名称 | 说明 |
|---|---|
| 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 |
获取或设置填充面板内容区域的 画笔 。 (继承自 Panel) |
| BackgroundSizing |
获取或设置一个值,该值指示背景相对于此元素边框的扩展距离。 |
| BackgroundSizingProperty |
标识 BackgroundSizing 依赖项属性。 |
| BackgroundTransition |
获取或设置 BrushTransition 的实例,以自动对 Background 属性的更改进行动画处理。 (继承自 Panel) |
| BaseUri |
获取一个统一资源标识符(URI),该标识符表示 XAML 加载时 XAML 构造对象的基 URI。 此属性适用于运行时的 URI 解析。 (继承自 FrameworkElement) |
| BorderBrush |
获取或设置描述面板边框填充的画笔。 |
| BorderBrushProperty |
标识 BorderBrush 依赖项属性。 |
| BorderThickness |
获取或设置面板的边框粗细。 |
| BorderThicknessProperty |
标识 BorderThickness 依赖项属性。 |
| CacheMode |
获取或设置一个值,该值指示应尽可能将呈现的内容缓存为复合位图。 (继承自 UIElement) |
| CanBeScrollAnchor |
获取或设置一个值,该值指示 UIElement 是否可以成为滚动定位的候选项。 (继承自 UIElement) |
| CanDrag |
获取或设置一个值,该值指示是否可以在拖放操作中将元素作为数据拖动。 (继承自 UIElement) |
| CenterPoint |
获取或设置元素的中心点,即发生旋转或缩放的点。 影响元素的呈现位置。 (继承自 UIElement) |
| Children |
获取面板的子元素的集合。 (继承自 Panel) |
| ChildrenTransitions |
获取或设置应用于 Panel 子类子内容的 Transition 样式元素的集合。 (继承自 Panel) |
| Clip |
获取或设置用于定义 UIElement 内容的轮廓的 RectangleGeometry。 (继承自 UIElement) |
| ColumnDefinitions |
获取在此 Grid 实例上定义的 ColumnDefinition 对象的列表。 |
| ColumnProperty |
标识 Grid.Column XAML 附加属性。 |
| ColumnSpacing |
获取或设置网格列之间的统一距离(以像素为单位)。 |
| ColumnSpacingProperty |
标识 ColumnSpacing 依赖属性。 |
| ColumnSpanProperty |
标识 Grid.ColumnSpan XAML 附加属性。 |
| CompositeMode |
获取或设置一个属性,该属性在其父布局和窗口中声明元素的备用组合和混合模式。 这与混合 XAML/Microsoft DirectX UI 中涉及的元素相关。 (继承自 UIElement) |
| ContextFlyout |
获取或设置与此元素关联的浮出控件。 (继承自 UIElement) |
| CornerRadius |
获取或设置面板边框角的半径。 |
| CornerRadiusProperty |
标识 CornerRadius 依赖项属性。 |
| DataContext |
获取或设置 FrameworkElement 的数据上下文。 数据上下文的常见用途是 |
| DesiredSize |
获取此 UIElement 在布局过程的度量传递期间计算的大小。 (继承自 UIElement) |
| Dispatcher |
始终在 Windows 应用 SDK 应用中返回 |
| DispatcherQueue |
获取 |
| ExitDisplayModeOnAccessKeyInvoked |
获取或设置一个值,该值指定在调用访问密钥时是否消除访问密钥显示。 (继承自 UIElement) |
| FlowDirection |
获取或设置文本和其他 UI 元素在控制布局的任何父元素中流动的方向。 此属性可以设置为或 |
| FocusState |
获取一个值,该值指定此控件是否具有焦点,以及获取焦点的模式。 (继承自 UIElement) |
| FocusVisualMargin |
获取或设置 FrameworkElement 焦点视觉对象的外部边距。 (继承自 FrameworkElement) |
| FocusVisualPrimaryBrush |
获取或设置用于为 FrameworkElement 绘制或 |
| FocusVisualPrimaryThickness |
获取或设置 FrameworkElement 的外边框或 |
| FocusVisualSecondaryBrush |
获取或设置用于为 FrameworkElement 绘制或 |
| FocusVisualSecondaryThickness |
获取或设置 FrameworkElement 的框架视觉对象内边框的 |
| Height |
获取或设置 FrameworkElement 的建议高度。 (继承自 FrameworkElement) |
| HighContrastAdjustment |
获取或设置一个值,该值指示在启用高对比度主题时框架是否自动调整元素的视觉属性。 (继承自 UIElement) |
| HorizontalAlignment |
获取或设置在布局父级(如面板或项控件)中组合时应用于 FrameworkElement 的水平对齐特征。 (继承自 FrameworkElement) |
| IsAccessKeyScope |
获取或设置一个值,该值指示元素是否定义其自己的访问密钥范围。 (继承自 UIElement) |
| IsDoubleTapEnabled |
获取或设置一个值,该值确定 DoubleTapped 事件是否可以源自该元素。 (继承自 UIElement) |
| IsHitTestVisible |
获取或设置此 UIElement 的包含区域是否可以返回命中测试的真实值。 (继承自 UIElement) |
| IsHoldingEnabled |
获取或设置一个值,该值确定 Holding 事件是否可以源自该元素。 (继承自 UIElement) |
| IsItemsHost |
获取一个值,该值指示此 面板 是否是 由 ItemsControl 生成的 UI 项的容器。 (继承自 Panel) |
| IsLoaded |
获取一个值,该值指示是否已将元素添加到元素树中并已准备好进行交互。 (继承自 FrameworkElement) |
| IsRightTapEnabled |
获取或设置一个值,该值确定 RightTapped 事件是否可以源自该元素。 (继承自 UIElement) |
| IsTabStop |
获取或设置一个值,该值指示控件是否包含在选项卡导航中。 (继承自 UIElement) |
| IsTapEnabled |
获取或设置一个值,该值确定 点击 事件是否可以源自该元素。 (继承自 UIElement) |
| 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 |
获取或设置边框与其子对象之间的距离。 |
| PaddingProperty |
标识 Padding 依赖属性。 |
| 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 主题。 你指定的 |
| Resources |
获取本地定义的资源字典。 在 XAML 中,可以通过 XAML 隐式集合语法将资源项作为属性元素的 |
| Rotation |
获取或设置顺时针旋转的角度(以度为单位)。 相对于 RotationAxis 和 CenterPoint 旋转。 影响元素的呈现位置。 (继承自 UIElement) |
| RotationAxis |
获取或设置要围绕元素旋转的轴。 (继承自 UIElement) |
| RotationTransition |
获取或设置对 Rotation 属性的更改进行动画处理的 ScalarTransition。 (继承自 UIElement) |
| RowDefinitions |
获取在此 Grid 实例上定义的 RowDefinition 对象列表。 |
| RowProperty |
标识 Grid.Row XAML 附加属性。 |
| RowSpacing |
获取或设置网格行之间的统一距离(以像素为单位)。 |
| RowSpacingProperty |
标识 RowSpacing 依赖属性。 |
| RowSpanProperty |
标识 Grid.RowSpan XAML 附加属性。 |
| Scale |
获取或设置元素的规模。 相对于元素的 CenterPoint 进行缩放。 影响元素的呈现位置。 (继承自 UIElement) |
| ScaleTransition |
获取或设置 Vector3Transition,该 Vector3Transition 对 Scale 属性的更改进行动画处理。 (继承自 UIElement) |
| Shadow |
获取或设置元素强制转换的阴影效果。 (继承自 UIElement) |
| Style |
获取或设置在布局和呈现期间应用于此对象的实例 样式 。 (继承自 FrameworkElement) |
| TabFocusNavigation |
获取或设置一个值,该值修改 Tabbing 和 TabIndex 对此控件的工作方式。 (继承自 UIElement) |
| TabIndex |
获取或设置一个值,该值确定当用户使用 Tab 键浏览控件时元素接收焦点的顺序。 (继承自 UIElement) |
| Tag |
获取或设置可用于存储有关此对象的自定义信息的任意对象值。 (继承自 FrameworkElement) |
| Transform3D |
获取或设置呈现此元素时要应用的三维转换效果。 (继承自 UIElement) |
| TransformMatrix |
获取或设置要应用于元素的转换矩阵。 (继承自 UIElement) |
| Transitions |
获取或设置应用于 UIElement 的 Transition 样式元素的集合。 (继承自 UIElement) |
| Translation |
获取或设置元素的 x、y 和 z 呈现位置。 (继承自 UIElement) |
| TranslationTransition |
获取或设置 Vector3Transition,该 Vector3Transition 对翻译属性的更改进行动画处理。 (继承自 UIElement) |
| Triggers |
获取为 FrameworkElement 定义的动画的触发器集合。 不常用。 请参阅“备注”。 (继承自 FrameworkElement) |
| UseLayoutRounding |
获取或设置一个值,该值确定对象及其视觉子树的呈现是否应使用将呈现与整个像素对齐的舍入行为。 (继承自 UIElement) |
| UseSystemFocusVisuals |
获取或设置一个值,该值指示控件是使用由系统绘制的焦点视觉对象还是控件模板中定义的焦点视觉对象。 (继承自 UIElement) |
| VerticalAlignment |
获取或设置在父对象(如面板或项控件)中组合时应用于 FrameworkElement 的垂直对齐特征。 (继承自 FrameworkElement) |
| Visibility |
获取或设置 UIElement 的可见性。 不可见的元素 |
| Width |
获取或设置 FrameworkElement 的宽度。 (继承自 FrameworkElement) |
| XamlRoot |
获取或设置 |
| XYFocusDown |
获取或设置当用户按下游戏控制器方向盘(D 板)时获得焦点的对象。 (继承自 UIElement) |
| XYFocusDownNavigationStrategy |
获取或设置一个值,该值指定用于确定向下导航的目标元素的策略。 (继承自 UIElement) |
| XYFocusKeyboardNavigation |
获取或设置一个值,该值使用键盘方向箭头启用或禁用导航。 (继承自 UIElement) |
| XYFocusLeft |
获取或设置当用户向左按下游戏控制器方向盘(D 板)时获得焦点的对象。 (继承自 UIElement) |
| XYFocusLeftNavigationStrategy |
获取或设置一个值,该值指定用于确定左侧导航的目标元素的策略。 (继承自 UIElement) |
| XYFocusRight |
获取或设置当用户向右按下游戏控制器方向面板(D 板)时获取焦点的对象。 (继承自 UIElement) |
| XYFocusRightNavigationStrategy |
获取或设置一个值,该值指定用于确定右侧导航的目标元素的策略。 (继承自 UIElement) |
| XYFocusUp |
获取或设置当用户按下游戏控制器方向面板(D 板)时获得焦点的对象。 (继承自 UIElement) |
| XYFocusUpNavigationStrategy |
获取或设置一个值,该值指定用于确定向上导航的目标元素的策略。 (继承自 UIElement) |
附加属性
| 名称 | 说明 |
|---|---|
| Column |
获取或设置父网格布局容器处理子布局时元素的列对齐方式。 |
| ColumnSpan |
获取或设置一个值,该值指示元素内容在父网格中跨越的列总数。 |
| Row |
获取或设置父网格布局容器处理子布局时元素的行对齐方式。 |
| RowSpan |
获取或设置一个值,该值指示元素内容在父网格中跨越的行总数。 |
方法
活动
| 名称 | 说明 |
|---|---|
| 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 |
当指针设备在此元素中启动 Press 操作时发生。 (继承自 UIElement) |
| PointerReleased |
在此元素中释放之前启动 Press 操作的指针设备时发生。 请注意, 无法保证按下 操作的结束触发事件 |
| PointerWheelChanged |
当指针滚轮的增量值更改时发生。 (继承自 UIElement) |
| PreviewKeyDown |
当 UIElement 具有焦点时按下键盘键时发生。 (继承自 UIElement) |
| PreviewKeyUp |
当 UIElement 具有焦点时释放键盘键时发生。 (继承自 UIElement) |
| ProcessKeyboardAccelerators |
按下 键盘快捷方式(或快捷键) 时发生。 (继承自 UIElement) |
| RightTapped |
当指针位于元素上时发生右键输入刺激时发生。 (继承自 UIElement) |
| SizeChanged |
在 FrameworkElement 上的 ActualHeight 或 ActualWidth 属性值更改时发生。 (继承自 FrameworkElement) |
| Tapped |
在此元素的命中测试区域发生其他未经处理的 Tap 交互时发生。 (继承自 UIElement) |
| Unloaded |
当此对象不再连接到主对象树时发生。 (继承自 FrameworkElement) |