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 優化 ,以取得維持順暢且回應式用戶體驗的秘訣。
注意
根據預設,主動式畫筆會捲動/移動瀏覽清單, (例如觸控、觸控板和被動手寫筆) 。 如果您的 app 應該使用使用中的畫筆進行文字選取,您可以覆寫畫筆卷動行為。 如需詳細資訊,請參閱 ScrollViewer 類別參考的 Pen 互動一節。
根據預設,用戶可以在 GridView 中選取單一專案。 您可以將 SelectionMode 屬性設定為 ListViewSelectionMode 列舉值,以允許多重選取或停用選取。 您也可以變更 GridView 互動模式,讓專案回應使用者按兩下,例如按鈕,而不是被選取。
下表顯示使用者可以與 GridView 互動的方式,以及如何響應互動。
若要啟用此互動︰ | 使用這些設定: | 處理這個事件︰ | 使用此屬性來取得選取的項目: |
---|---|---|---|
沒有互動 | SelectionMode = None,IsItemClickEnabled = False | 不適用 | 不適用 |
單一選取 | 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 附加屬性設定為 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 的新值,請考慮重現這些與起點相同的主題動畫。 如果您要自行設定屬性,除非您在定義中再次包含這些預設值,否則會覆寫這些預設值。
如果您需要在可捲動檢視中處理 UIElement 的指標事件 (,例如 ScrollViewer) ,您必須呼叫 UIElement.CancelDirectmanipulation () 明確停用檢視中元素的操作事件支援。 若要重新啟用檢視中的操作事件,請呼叫 UIElement.TryStartDirectManipulation。
選取行為和 CollectionViewSource
衍生自 Selector 的清單控制項具有預設選取行為,取決於專案來源 (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) ,表示 XAML 載入時 XAML 建構物件的基底 URI。 這個屬性適用於運行時間的 URI 解析。 (繼承來源 FrameworkElement) |
BorderBrush |
取得或設定描述控制件框線填滿的筆刷。 (繼承來源 Control) |
BorderThickness |
取得或設定控制項的框線粗細。 (繼承來源 Control) |
CacheMode |
取得或設定值,這個值表示轉譯的內容應該盡可能快取為複合位圖。 (繼承來源 UIElement) |
CanBeScrollAnchor |
取得或設定值,這個值表示 UIElement 是否可以是捲動錨定候選專案。 (繼承來源 UIElement) |
CanDrag |
取得或設定值,這個值表示是否可以將專案拖曳為拖放作業中的數據。 (繼承來源 UIElement) |
CanDragItems |
取得或設定值,這個值表示檢視中的專案是否可以拖曳為數據承載。 (繼承來源 ListViewBase) |
CanReorderItems |
取得或設定值,這個值表示檢視中的專案是否可以透過用戶互動重新排序。 (繼承來源 ListViewBase) |
CenterPoint |
取得或設定專案的中心點,這是發生旋轉或縮放的點。 影響項目的轉譯位置。 (繼承來源 UIElement) |
CharacterSpacing |
取得或設定字元之間的統一間距,單位為 em 的 1/1000。 (繼承來源 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/Select 按鈕時,焦點是否受限於控件。 (繼承來源 Control) |
IsFocusEngagementEnabled |
取得或設定值,指出當使用者按下遊戲控制器上的 A/Select 按鈕時,焦點是否可以限制為控件。 (繼承來源 Control) |
IsGrouping |
取得指出控制項是否使用群組的值。 (繼承來源 ItemsControl) |
IsHitTestVisible |
取得或設定這個 UIElement 的自主區域是否可以傳回真正的值來進行點擊測試。 (繼承來源 UIElement) |
IsHoldingEnabled |
取得或設定值,這個值會決定 Holding 事件是否可以來自該專案。 (繼承來源 UIElement) |
IsItemClickEnabled |
取得或設定值,這個值表示檢視中的專案是否會引發 ItemClick 事件以響應互動。 (繼承來源 ListViewBase) |
IsLoaded |
取得值,這個值表示專案是否已加入至專案樹狀結構,且已準備好進行互動。 (繼承來源 FrameworkElement) |
IsMultiSelectCheckBoxEnabled |
取得或設定值,這個值表示是否顯示複選框以啟用多重選取。 (繼承來源 ListViewBase) |
IsRightTapEnabled |
取得或設定值,這個值會判斷 RightTapped 事件是否可以來自該專案。 (繼承來源 UIElement) |
IsSwipeEnabled |
取得或設定值,這個值表示檢視是否支援 撥動 互動的離散輸入處理。 (繼承來源 ListViewBase) |
IsSynchronizedWithCurrentItem |
取得或設定值,這個值表示 選取器 是否應該讓 SelectedItem 與 Items 屬性中的目前專案保持同步。 (繼承來源 Selector) |
IsTabStop |
取得或設定值,這個值表示控制項是否包含於索引標籤巡覽。 (繼承來源 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 |
取得或設定 ScalarTransition,以動畫顯示 Opacity 屬性的變更。 (繼承來源 UIElement) |
Padding |
取得或設定控制項內部的邊框間距。 (繼承來源 Control) |
Parent |
取得物件樹狀結構中這個 FrameworkElement 的父物件。 (繼承來源 FrameworkElement) |
PointerCaptures |
取得所有擷取指標的集合,表示為 指標 值。 (繼承來源 UIElement) |
Projection |
取得或設定轉譯這個專案時要套用的 3D 效果) (3D 效果。 (繼承來源 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 隱含集合語法,將資源專案建立為屬性專案的子物件專案 |
Rotation |
取得或設定順時針旋轉的角度,以度為單位。 相對於 RotationAxis 和 CenterPoint 旋轉。 影響項目的轉譯位置。 (繼承來源 UIElement) |
RotationAxis |
取得或設定座標軸,以繞著旋轉專案。 (繼承來源 UIElement) |
RotationTransition |
取得或設定 ScalarTransition,以動畫顯示 Rotation 屬性的變更。 (繼承來源 UIElement) |
Scale |
取得或設定專案的刻度。 相對於專案的 CenterPoint 進行調整。 影響項目的轉譯位置。 (繼承來源 UIElement) |
ScaleTransition |
取得或設定 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 Creators Update (組建 10.0.15063) 和更新版本,TABFocusNavigation 屬性可在 UIElement 基類上使用,以在不使用 ControlTemplate 的索引卷標序列中包含物件。 |
Tag |
取得或設定任意物件值,可用來儲存這個物件的自定義資訊。 (繼承來源 FrameworkElement) |
Template |
取得或設定控制項範本。 控件範本會定義 UI 中控制件的視覺外觀,並在 XAML 標記中定義。 (繼承來源 Control) |
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) |
VerticalContentAlignment |
取得或設定控制項內容的垂直對齊。 (繼承來源 Control) |
Visibility |
取得或設定 UIElement的可見性。
|
Width |
取得或設定 FrameworkElement 的寬度。 (繼承來源 FrameworkElement) |
XamlRoot |
取得或設定 |
XYFocusDown |
取得或設定當使用者按下遊戲控制器的 Directional Pad (D-pad) 時取得焦點的物件。 (繼承來源 UIElement) |
XYFocusDownNavigationStrategy |
取得或設定值,指定用來判斷向下導覽目標元素的策略。 (繼承來源 UIElement) |
XYFocusKeyboardNavigation |
取得或設定值,這個值會啟用或停用使用鍵盤方向箭號的流覽。 (繼承來源 UIElement) |
XYFocusLeft |
取得或設定當用戶在遊戲控制器的 Directional Pad (D-pad) 左鍵時取得焦點的物件。 (繼承來源 UIElement) |
XYFocusLeftNavigationStrategy |
取得或設定值,指定用來判斷左側導覽目標元素的策略。 (繼承來源 UIElement) |
XYFocusRight |
取得或設定當使用者在遊戲控制器的 Directional Pad (D-pad) 上按下滑鼠右鍵時取得焦點的物件。 (繼承來源 UIElement) |
XYFocusRightNavigationStrategy |
取得或設定值,指定用來判斷右導覽之目標元素的策略。 (繼承來源 UIElement) |
XYFocusUp |
取得或設定對象,當使用者按下遊戲控制器的 Directional Pad (D-pad) 時取得焦點。 (繼承來源 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/Select 按鈕時,焦點受限於控件。 (繼承來源 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 |
發生於 架構Element 已建構並新增至物件樹狀結構,並準備好進行互動時。 (繼承來源 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 |
發生於先前起始 按下 動作的指標裝置放開時,同時在此元素內。 請注意, 按下動作的 結尾不保證會引發 |
PointerWheelChanged |
發生於指標滾輪的差異值變更時。 (繼承來源 UIElement) |
PreviewKeyDown |
在 UIElement 有焦點時按下鍵盤按鍵時發生。 (繼承來源 UIElement) |
PreviewKeyUp |
發生於 UIElement 有焦點時放開鍵盤按鍵時。 (繼承來源 UIElement) |
ProcessKeyboardAccelerators |
發生於按下 鍵盤快捷方式 (或快捷鍵) 時。 (繼承來源 UIElement) |
RightTapped |
發生於在指標位於 元素上方時發生右鍵輸入回應時。 (繼承來源 UIElement) |
SelectionChanged |
發生於目前選取的項目變更時。 (繼承來源 Selector) |
SizeChanged |
發生於 ActualHeight 或 ActualWidth 屬性變更 FrameworkElement 上的值時。 (繼承來源 FrameworkElement) |
Tapped |
發生於未處理的 點 選互動發生於這個項目的點擊測試區域。 (繼承來源 UIElement) |
Unloaded |
當這個物件不再連接到主物件樹狀結構時發生。 (繼承來源 FrameworkElement) |