DataGridTemplateColumn 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示將樣板指定的內容裝載於其儲存格中的 DataGrid 資料行。
public ref class DataGridTemplateColumn : System::Windows::Controls::DataGridColumn
public class DataGridTemplateColumn : System.Windows.Controls.DataGridColumn
type DataGridTemplateColumn = class
inherit DataGridColumn
Public Class DataGridTemplateColumn
Inherits DataGridColumn
- 繼承
範例
下列範例將示範如何建立 DataGridTemplateColumn。
<Grid>
<Grid.Resources>
<!--DataTemplate for Published Date column defined in Grid.Resources. PublishDate is a property on the ItemsSource of type DateTime -->
<DataTemplate x:Key="DateTemplate" >
<StackPanel Width="20" Height="30">
<Border Background="LightBlue" BorderBrush="Black" BorderThickness="1">
<TextBlock Text="{Binding PublishDate, StringFormat={}{0:MMM}}" FontSize="8" HorizontalAlignment="Center" />
</Border>
<Border Background="White" BorderBrush="Black" BorderThickness="1">
<TextBlock Text="{Binding PublishDate, StringFormat={}{0:yyyy}}" FontSize="8" FontWeight="Bold" HorizontalAlignment="Center" />
</Border>
</StackPanel>
</DataTemplate>
<!--DataTemplate for the Published Date column when in edit mode. -->
<DataTemplate x:Key="EditingDateTemplate">
<DatePicker SelectedDate="{Binding PublishDate}" />
</DataTemplate>
</Grid.Resources>
<DataGrid Name="DG1" ItemsSource="{Binding}" AutoGenerateColumns="False" >
<DataGrid.Columns>
<!--Custom column that shows the published date-->
<DataGridTemplateColumn Header="Publish Date" CellTemplate="{StaticResource DateTemplate}" CellEditingTemplate="{StaticResource EditingDateTemplate}" />
</DataGrid.Columns>
</DataGrid>
</Grid>
下圖顯示上一個 XAML 的輸出。
備註
此 DataGridTemplateColumn 類型可讓您藉由指定顯示和編輯值時要使用的儲存格範本,來建立自己的資料行類型。 若要指定用來顯示不在編輯模式之儲存格內容的範本,請設定 CellTemplate 屬性。 若要指定用來顯示處於編輯模式之儲存格內容的範本,請設定 CellEditingTemplate 屬性。 如需範本的詳細資訊,請參閱 資料範本化概觀 和 樣式和範本化。
為了方便起見, DataGrid 請提供下列預先定義的資料行類型:
資料行類型 | 資料顯示 |
---|---|
DataGridHyperlinkColumn | 用來顯示 URI 資料。 |
DataGridComboBoxColumn | 用來顯示列舉資料。 |
DataGridTextColumn | 用來顯示文字。 |
DataGridCheckBoxColumn | 用來顯示布林資料。 |
建構函式
DataGridTemplateColumn() |
初始化 DataGridTemplateColumn 類別的新執行個體。 |
欄位
屬性
ActualWidth |
取得資料行的目前寬度,以裝置獨立單位為單位, (每單位 1/96 英吋) 。 (繼承來源 DataGridColumn) |
CanUserReorder |
取得或設定值,該值指出使用者是否可藉由拖曳欄標題來變更欄顯示位置。 (繼承來源 DataGridColumn) |
CanUserResize |
取得或設定值,這個值表示使用者是否可以使用滑鼠來調整資料行寬度。 (繼承來源 DataGridColumn) |
CanUserSort |
取得或設定值,該值指出使用者是否可藉由按一下欄標題來排序欄。 (繼承來源 DataGridColumn) |
CellEditingTemplate |
取得或設定範本,這個範本要用來顯示編輯模式下之儲存格的內容。 |
CellEditingTemplateSelector |
取得或設定物件,以決定用來顯示處於編輯模式之儲存格內容的範本。 |
CellStyle |
取得或設定用於呈現資料行中儲存格的樣式。 (繼承來源 DataGridColumn) |
CellTemplate |
取得或設定範本,以用來顯示不是處於編輯模式之儲存格的內容。 |
CellTemplateSelector |
取得或設定物件,以決定用來顯示不是處於編輯模式之儲存格內容的範本。 |
ClipboardContentBinding |
取得或設定當取得或設定剪貼簿的儲存格內容時,要使用的繫結物件。 (繼承來源 DataGridColumn) |
DataGridOwner |
取得包含此資料行的 DataGrid 控制項。 (繼承來源 DataGridColumn) |
DependencyObjectType |
取得包裝 DependencyObjectType 這個實例 CLR 型別的 。 (繼承來源 DependencyObject) |
Dispatcher |
取得與這個 Dispatcher 關聯的 DispatcherObject。 (繼承來源 DispatcherObject) |
DisplayIndex |
取得或設定相對於 DataGrid 中之其他資料行的資料行位置。 (繼承來源 DataGridColumn) |
DragIndicatorStyle |
取得或設定在拖曳作業期間要套用至資料行標題的樣式物件。 (繼承來源 DataGridColumn) |
Header |
取得或設定欄標題的內容。 (繼承來源 DataGridColumn) |
HeaderStringFormat |
取得或設定格式模式,以套用到欄標題的內容。 (繼承來源 DataGridColumn) |
HeaderStyle |
取得或設定呈現欄標題時所用的樣式。 (繼承來源 DataGridColumn) |
HeaderTemplate |
取得或設定範本,以定義欄標題的視覺表示方式。 (繼承來源 DataGridColumn) |
HeaderTemplateSelector |
取得或設定物件,以選取要用於欄標題的範本。 (繼承來源 DataGridColumn) |
IsAutoGenerated |
取得值,這個值會指出資料行是否自動產生。 (繼承來源 DataGridColumn) |
IsFrozen |
取得值,這個值會指出資料行是否會避免水平捲動。 (繼承來源 DataGridColumn) |
IsReadOnly |
取得或設定值,該值指出是否可編輯欄中的儲存格。 (繼承來源 DataGridColumn) |
IsSealed |
取得值,這個值表示此執行個體目前是否已密封 (唯讀)。 (繼承來源 DependencyObject) |
MaxWidth |
取得或設定資料行的最大寬度條件約束。 (繼承來源 DataGridColumn) |
MinWidth |
取得或設定資料行的最小寬度條件約束。 (繼承來源 DataGridColumn) |
SortDirection |
取得或設定欄的排序方向 (遞增或遞減)。 (繼承來源 DataGridColumn) |
SortMemberPath |
取得或設定屬性名稱或以句號分隔的屬性名稱階層,要當做排序依據成員。 (繼承來源 DataGridColumn) |
Visibility |
取得或設定欄的可見性。 (繼承來源 DataGridColumn) |
Width |
取得或設定欄寬或自動調整模式。 (繼承來源 DataGridColumn) |
方法
事件
CopyingCellClipboardContent |
發生於準備好儲存格剪貼簿內容之後。 (繼承來源 DataGridColumn) |
PastingCellClipboardContent |
發生在將 [剪貼簿] 內容移至儲存格之前。 (繼承來源 DataGridColumn) |