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 .../>
- 繼承
- 衍生
- 屬性
範例
Tip
更多資訊、設計指導及程式碼範例,請參閱 版面面板。
WinUI 3 Gallery 應用程式包含大部分 WinUI 3 控制項、特性和功能的互動式範例。 從 Microsoft Store 取得應用程式,或在 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);
}
}
備註
Tip
更多資訊、設計指導及程式碼範例,請參閱 版面面板。
Grid 是一個版面面板,支援以列和欄排列子元素。
你通常透過提供一個或多個 RowDefinition 元素作為 Grid.RowDefinitions 的值,以及一個或多個 ColumnDefinition 元素作為 Grid.ColumnDefinitions 的值來定義格網的佈局行為。 接著,對格子的每個元素子節點套用 Grid.Row 和 Grid.Column 附加的屬性,指示該元素在父格子中的位置。
要設定列的高度和欄的寬度,你為每個 RowDefinition 設定 RowDefinition.Height,並為每個 ColumnDefinition 設定 ColumnDefinition.Width。 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 對網格子元素附加屬性。
預設情況下,格子包含一列一欄。
在格子元素上設定 Margin 屬性,會設定元素與其格格格邊界之間的距離。 HorizontalAlignment 和 VerticalAlignment 屬性描述了子元素在格子格中應如何定位。 你可以結合 Margin 屬性和對齊屬性,精確定位格子元素。 如果你還需要對每個子元素的佈局有更多控制,可以考慮使用 VariableSizedWrapGrid。
WrapGrid 是另一個類似的版面面板,對於過寬的內容處理較佳,因為一般網格可能會根據其他版面屬性的值裁剪過寬的內容。
第一欄中跨越多列的元素,即使第一列有足夠高度容納該元素,仍可能影響每列跨度的高度,且後續跨度列的高度為 0。 例如,這個格子的第二列高度設為 0,因此藍色矩形通常不會被看見。 在這種情況下,你可能會預期紅色橢圓不會影響第二列,因為第一排足夠高容納橢圓。 不過,Grid 會計算每列的最小高度以容納紅色橢圓,然後跨越該列。 因此,第二列的最小高度為 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>
邊界性質
格子定義邊界屬性,讓你能在不使用額外邊 界 元素的情況下,在網格周圍畫出邊界。 這些屬性分別是 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 附加屬性的主機服務類別。 這些附加屬性使子元素能夠報告它們在格子父節點中應如何定位。
為了支援 XAML 處理器對附加屬性的存取,並向程式碼暴露等效的 get 與 set 操作,每個 XAML 附加屬性都有一對 Get 與 Set 存取器方法。 另一種在程式碼中取得或設定值的方法是使用相依屬性系統,呼叫 GetValue 或 SetValue ,並將識別欄位傳入相依屬性識別碼。
| 附屬財產 | 說明 |
|---|---|
| 資料行 | 當子版面配置被父網格版面容器處理時,取得或設定元素的欄位對齊。
|
| Column Span(列線全長) | 取得或設定一個值,表示該元素內容在父網格中所跨越的總欄位數。
|
| 資料列 | 當子版面配置被父網格版面容器處理時,取得或設定元素的列對齊。
|
| 資料列範圍 | 取得或設定一個值,表示元素內容在父網格中所跨越的總列數。
|
建構函式
| 名稱 | Description |
|---|---|
| Grid() |
初始化 Grid 類別的新實例。 |
屬性
| 名稱 | Description |
|---|---|
| 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 |
識別背景尺寸依賴性屬性。 |
| BackgroundTransition |
取得或設定 BrushTransition 實例自動為背景屬性做動畫變更。 (繼承來源 Panel) |
| BaseUri |
取得一個統一資源識別碼(URI),代表 XAML 載入時所建構物件的基礎 URI。 此特性對執行時的 URI 解析非常有用。 (繼承來源 FrameworkElement) |
| BorderBrush |
取得或設定一個筆刷,描述面板的邊框填充。 |
| BorderBrushProperty |
識別 BorderBrush 相依性屬性。 |
| BorderThickness |
用來設定面板的邊框厚度。 |
| BorderThicknessProperty |
識別 BorderThickness 依賴性質。 |
| CacheMode |
取得或設定一個值,表示渲染內容應盡可能以合成點陣圖形式快取。 (繼承來源 UIElement) |
| CanBeScrollAnchor |
取得或設定一個值,指示 UIElement 是否適合作為捲動錨定的候選對象。 (繼承來源 UIElement) |
| CanDrag |
取得或設定一個值,指示該元素是否能以拖放操作的方式被拖曳為資料。 (繼承來源 UIElement) |
| CenterPoint |
取得或設定元素的中心點,即旋轉或縮放發生的中心點。 會影響元素的渲染位置。 (繼承來源 UIElement) |
| Children |
取得面板子元素的集合。 (繼承來源 Panel) |
| ChildrenTransitions |
取得或設定適用於面板子類別子內容的 Transition 風格元素集合。 (繼承來源 Panel) |
| Clip |
取得或設定用於定義 UIElement 內容輪廓的矩形幾何。 (繼承來源 UIElement) |
| ColumnDefinitions |
會取得 Grid 實例中定義的 ColumnDefinition 物件清單。 |
| ColumnProperty |
識別 Grid.Column XAML 附加屬性。 |
| ColumnSpacing |
取得或設定格列間的均勻距離(以像素為單位)。 |
| ColumnSpacingProperty |
識別欄位間距依賴性質。 |
| ColumnSpanProperty |
識別 Grid.ColumnSpan XAML 附加屬性。 |
| CompositeMode |
取得或設定一個屬性,宣告該元素在其父版面配置與視窗中的替代合成與混合模式。 這對於涉及混合 XAML / Microsoft DirectX UI 的元素非常重要。 (繼承來源 UIElement) |
| ContextFlyout |
取得或設定與此元素相關的飛出。 (繼承來源 UIElement) |
| CornerRadius |
取得或設定面板邊框角落的半徑。 |
| CornerRadiusProperty |
識別 CornerRadius 依賴性屬性。 |
| DataContext |
取得或設定 FrameworkElement 的資料上下文。 資料上下文的常見用途是 a |
| DesiredSize |
取得該 UIElement 在佈局過程的測度通過時計算出的大小。 (繼承來源 UIElement) |
| Dispatcher |
它總是在 Windows App SDK 應用程式中回傳 |
| DispatcherQueue |
得到 |
| ExitDisplayModeOnAccessKeyInvoked |
取得或設定一個值,指定在呼叫存取鍵時是否會關閉存取鍵顯示。 (繼承來源 UIElement) |
| FlowDirection |
它設定文字及其他 UI 元素在任何控制其版面配置的父元素內流動的方向。 此屬性可設定為或 |
| FocusState |
會得到一個值,指定此控制是否具備對焦功能,以及取得對焦的方式。 (繼承來源 UIElement) |
| FocusVisualMargin |
取得或設定 FrameworkElement 焦點視覺化的外圍。 (繼承來源 FrameworkElement) |
| FocusVisualPrimaryBrush |
取得或設定用來繪製框架元素外邊界 |
| FocusVisualPrimaryThickness |
取得或設定框架元素外層邊界 |
| FocusVisualSecondaryBrush |
取得或設定用來繪製框架元素內邊界 |
| FocusVisualSecondaryThickness |
取得或設定框架元素內邊界 |
| Height |
取得或設定 FrameworkElement 的建議高度。 (繼承來源 FrameworkElement) |
| HighContrastAdjustment |
取得或設定一個值,指示框架在啟用高對比主題時是否自動調整元素的視覺屬性。 (繼承來源 UIElement) |
| HorizontalAlignment |
取得或設定在 FrameworkElement 組合於版面父元件(如面板或項目控制項)時套用的水平對齊特性。 (繼承來源 FrameworkElement) |
| IsAccessKeyScope |
取得或設定一個值,指示元素是否定義其存取鍵作用域。 (繼承來源 UIElement) |
| IsDoubleTapEnabled |
取得或設定一個值,決定 DoubleTapped 事件是否能從該元素產生。 (繼承來源 UIElement) |
| IsHitTestVisible |
取得或設定此 UIElement 所包含區域是否能回傳真實值以進行命中測試。 (繼承來源 UIElement) |
| IsHoldingEnabled |
取得或設定一個值,決定 持有事件是否 能從該元素產生。 (繼承來源 UIElement) |
| IsItemsHost |
會得到一個值,指示這個 面板 是否是 ItemsControl 產生的 UI 項目容器。 (繼承來源 Panel) |
| IsLoaded |
會得到一個值,表示該元素是否已被加入元素樹並準備好進行互動。 (繼承來源 FrameworkElement) |
| IsRightTapEnabled |
取得或設定一個值,決定 RightTapped 事件是否能從該元素產生。 (繼承來源 UIElement) |
| IsTabStop |
取得或設定一個值,指示分頁導覽中是否包含某個控制項。 (繼承來源 UIElement) |
| IsTapEnabled |
取得或設定一個值,決定 Tapped 事件是否能從該元素產生。 (繼承來源 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 |
取得或設定 ScalarTransition,用來動畫化 Opacity 屬性的變更。 (繼承來源 UIElement) |
| Padding |
取得或設定邊界與其子物件之間的距離。 |
| PaddingProperty |
識別 Padding 依賴性質。 |
| Parent |
取得物件樹中 FrameworkElement 的父物件。 (繼承來源 FrameworkElement) |
| PointerCaptures |
取得所有捕獲指標的集合,以 指標 值表示。 (繼承來源 UIElement) |
| Projection |
在渲染這個元素時,會取得或設定投影(3D 效果)來套用。 (繼承來源 UIElement) |
| ProtectedCursor |
取得或設定游標,當指標位於此元素上時會顯示。 預設為 null,表示游標沒有變化。 (繼承來源 UIElement) |
| RasterizationScale |
會獲得一個代表額外比例因子的值,用於渲染形狀、影像、文字或媒體,通常是為了渲染比一般解析度更高的解析度。 (繼承來源 UIElement) |
| RenderSize |
會取得 UIElement 的最終渲染大小。 不建議使用此,詳見備註。 (繼承來源 UIElement) |
| RenderTransform |
取得或設定影響 UIElement 渲染位置的轉換資訊。 (繼承來源 UIElement) |
| RenderTransformOrigin |
取得或設定 RenderTransform 宣告的任何可能渲染轉換的起點,相對於 UIElement 的界限。 (繼承來源 UIElement) |
| RequestedTheme |
取得或設定 UI 主題,該主題由 UIElement (及其子元素)用於資源判定。 你指定的 |
| Resources |
取得本地定義的資源字典。 在 XAML 中,你可以透過 XAML 隱含的集合語法,將資源項目建立為屬性元素的 |
| Rotation |
設定順時針旋轉的角度,以度數為單位。 相對於旋轉軸和中心點旋轉。 會影響元素的渲染位置。 (繼承來源 UIElement) |
| RotationAxis |
讓軸線旋轉元素。 (繼承來源 UIElement) |
| RotationTransition |
取得或設定 ScalarTransition,讓 Rotation 屬性的變化動畫化。 (繼承來源 UIElement) |
| RowDefinitions |
會取得此 Grid 實例中定義的 RowDefinition 物件清單。 |
| RowProperty |
識別 Grid.Row XAML 附加屬性。 |
| RowSpacing |
取得或設定格列間均勻距離(像素數)。 |
| RowSpacingProperty |
識別 RowSpacing 依賴性質。 |
| RowSpanProperty |
識別 Grid.RowSpan XAML 附加屬性。 |
| Scale |
取得或設定元素的比例。 相對於元素的中心點進行縮放。 會影響元素的渲染位置。 (繼承來源 UIElement) |
| ScaleTransition |
取得或設定 Vector3Transition,用來動畫化 Scale 屬性的變更。 (繼承來源 UIElement) |
| Shadow |
取得或設定 元素所轉換的陰影效果。 (繼承來源 UIElement) |
| Style |
在版面設計和渲染過程中,會取得或設定一個實例樣 式 ,應用於該物件。 (繼承來源 FrameworkElement) |
| TabFocusNavigation |
取得或設定一個值,改變 tab 鍵和 TabIndex 對此控制項的運作方式。 (繼承來源 UIElement) |
| TabIndex |
取得或設定一個值,決定使用者使用 Tab 鍵在控制項中移動時,元素獲得焦點的順序。 (繼承來源 UIElement) |
| Tag |
取得或設定一個任意物件值,可用來儲存該物件的自訂資訊。 (繼承來源 FrameworkElement) |
| Transform3D |
在渲染這個元素時,會取得或設定 3D 轉換效果套用。 (繼承來源 UIElement) |
| TransformMatrix |
取得或設定轉換矩陣以套用到元素。 (繼承來源 UIElement) |
| Transitions |
取得或設定適用於 UIElement 的 Transition 風格元素集合。 (繼承來源 UIElement) |
| Translation |
取得或設定元素的 x、y 和 z 渲染位置。 (繼承來源 UIElement) |
| TranslationTransition |
取得或設定 Vector3Transition,用來動畫化 Translation 屬性的變更。 (繼承來源 UIElement) |
| Triggers |
取得為 FrameworkElement 定義的動畫觸發器集合。 不常用。 請參閱備註。 (繼承來源 FrameworkElement) |
| UseLayoutRounding |
取得或設定一個值,決定物件及其視覺子樹的渲染是否應該使用捨入行為,使渲染對齊到整像素。 (繼承來源 UIElement) |
| UseSystemFocusVisuals |
取得或設定一個值,指示控制使用系統繪製的焦點視覺化,還是控制模板中定義的焦點視覺化。 (繼承來源 UIElement) |
| VerticalAlignment |
取得或設定當 FrameworkElement 被組合在父物件(如面板或項目控制項)時,套用到的垂直對齊特性。 (繼承來源 FrameworkElement) |
| Visibility |
取得或設定 UIElement 的可見性。 不可見的 A |
| Width |
取得或設定 FrameworkElement 的寬度。 (繼承來源 FrameworkElement) |
| XamlRoot |
取得或設定 |
| XYFocusDown |
當使用者按下遊戲控制器的方向鍵(方向鍵)時,會取得或設定該物件被聚焦的目標。 (繼承來源 UIElement) |
| XYFocusDownNavigationStrategy |
取得或設定一個值,指定用以決定下行導覽目標元素的策略。 (繼承來源 UIElement) |
| XYFocusKeyboardNavigation |
取得或設定一個值,使鍵盤方向鍵導覽啟用或停用。 (繼承來源 UIElement) |
| XYFocusLeft |
當使用者按下遊戲控制器方向鍵(D-pad)左鍵時,會取得或設定該物件被聚焦。 (繼承來源 UIElement) |
| XYFocusLeftNavigationStrategy |
取得或設定一個值,指定用來決定左邊導航目標元素的策略。 (繼承來源 UIElement) |
| XYFocusRight |
當使用者按下遊戲控制器方向鍵(方向鍵)時,該物件會被聚焦。 (繼承來源 UIElement) |
| XYFocusRightNavigationStrategy |
取得或設定一個值,指定用以決定右向導航目標元素的策略。 (繼承來源 UIElement) |
| XYFocusUp |
當使用者按下遊戲控制器的方向鍵(D-pad)時,會取得或設定該物件會被聚焦。 (繼承來源 UIElement) |
| XYFocusUpNavigationStrategy |
取得或設定一個值,指定用以決定上行導航目標元素的策略。 (繼承來源 UIElement) |
附加屬性
| 名稱 | Description |
|---|---|
| Column |
當子版面配置被父網格版面容器處理時,取得或設定元素的欄位對齊。 |
| ColumnSpan |
取得或設定一個值,表示該元素內容在父網格中所跨越的總欄位數。 |
| Row |
當子版面配置被父網格版面容器處理時,取得或設定元素的列對齊。 |
| RowSpan |
取得或設定一個值,表示元素內容在父網格中所跨越的總列數。 |
方法
事件
| 名稱 | Description |
|---|---|
| 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 |
當本元素的命中測試區域發生原本未處理的 Hold 互動時,會發生這種情況。 (繼承來源 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 |
當使用者嘗試移動焦點(透過 Tab 鍵或方向箭頭)但焦點無法移動,因為該方向找不到焦點候選時,會發生這種情況。 (繼承來源 UIElement) |
| PointerCanceled |
當一個曾經接觸到的指標異常失去接觸時,就會發生這種情況。 (繼承來源 UIElement) |
| PointerCaptureLost |
當該元素先前持有的指標捕獲移至其他元素或其他位置時,會發生此現象。 (繼承來源 UIElement) |
| PointerEntered |
當指標進入該元素的命中測試區域時發生。 (繼承來源 UIElement) |
| PointerExited |
當指標離開該元素的命中測試區域時,會發生。 (繼承來源 UIElement) |
| PointerMoved |
當指標移動時,指標仍停留在該元素的命中測試區域內。 (繼承來源 UIElement) |
| PointerPressed |
當指標裝置在此元素內啟動 按鍵 動作時,會發生這種情況。 (繼承來源 UIElement) |
| PointerReleased |
當先前發起 新聞 行動的指標裝置在此元素內被釋放時,會發生這種情況。 請注意, 新聞行動 結束時不保證觸發 |
| PointerWheelChanged |
當指標輪的 delta 值改變時,會發生這種情況。 (繼承來源 UIElement) |
| PreviewKeyDown |
當 UIElement 正在對焦時按下鍵盤鍵時,會發生這種情況。 (繼承來源 UIElement) |
| PreviewKeyUp |
當 UIElement 正在對焦時放開鍵盤鍵時會發生。 (繼承來源 UIElement) |
| ProcessKeyboardAccelerators |
當按下 鍵盤快捷鍵(或加速器) 時會發生。 (繼承來源 UIElement) |
| RightTapped |
當指標正好在元素上方時,右鍵輸入刺激發生。 (繼承來源 UIElement) |
| SizeChanged |
當 ActualHeight 或 ActualWidth 屬性在 FrameworkElement 上的值改變時,會發生這種情況。 (繼承來源 FrameworkElement) |
| Tapped |
當未處理的 Tap 互動發生在該元件的命中測試區域時。 (繼承來源 UIElement) |
| Unloaded |
當該物件不再連接到主物件樹時,會發生這種情況。 (繼承來源 FrameworkElement) |