DataGridTemplateColumn クラス

定義

テンプレートで指定されるセルの内容をホストする 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 からの出力を示しています。

DataTemplate を使用する

注釈

DataGridTemplateColumn型を使用すると、値を表示および編集するときに使用するセル テンプレートを指定することで、独自の列型を作成できます。 編集モードではないセルの内容を表示するために使用するテンプレートを指定するには、 プロパティを設定します CellTemplate 。 編集モードのセルの内容を表示するために使用するテンプレートを指定するには、 プロパティを設定します CellEditingTemplate 。 テンプレートの詳細については、「 データ テンプレートの概要 」および「 スタイル設定とテンプレート」を参照してください。

便宜上、 DataGrid には、次の定義済みの列型が用意されています。

列の型 データ表示
DataGridHyperlinkColumn URI データを表示するには、 を使用します。
DataGridComboBoxColumn 列挙データを表示するには、 を使用します。
DataGridTextColumn テキストを表示するには、 を使用します。
DataGridCheckBoxColumn ブールデータを表示するには、 を使用します。

コンストラクター

DataGridTemplateColumn()

DataGridTemplateColumn クラスの新しいインスタンスを初期化します。

フィールド

CellEditingTemplateProperty

CellEditingTemplate 依存関係プロパティを識別します。

CellEditingTemplateSelectorProperty

CellEditingTemplateSelector 依存関係プロパティを識別します。

CellTemplateProperty

CellTemplate 依存関係プロパティを識別します。

CellTemplateSelectorProperty

CellEditingTemplateSelector 依存関係プロパティを識別します。

プロパティ

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)

メソッド

CancelCellEdit(FrameworkElement, Object)

編集中のセルの値を、元 (編集前) の値に戻します。

(継承元 DataGridColumn)
CheckAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるかどうかを確認します。

(継承元 DispatcherObject)
ClearValue(DependencyProperty)

プロパティのローカル値をクリアします。 クリアするプロパティは DependencyProperty 識別子で指定されます。

(継承元 DependencyObject)
ClearValue(DependencyPropertyKey)

読み取り専用プロパティのローカル値を消去します。 消去するプロパティは、DependencyPropertyKey で指定します。

(継承元 DependencyObject)
CoerceValue(DependencyProperty)

指定した依存関係プロパティの値を強制します。 これは、呼び出し元の DependencyObject の依存関係プロパティのプロパティ メタデータで指定されている CoerceValueCallback 関数を呼び出すことによって実現されます。

(継承元 DependencyObject)
CommitCellEdit(FrameworkElement)

セル編集モードを終了する前に、必要な検証を実行します。

(継承元 DataGridColumn)
Equals(Object)

指定した DependencyObject が現在の DependencyObject と等しいかどうかを判断します。

(継承元 DependencyObject)
GenerateEditingElement(DataGridCell, Object)

列の CellEditingTemplate プロパティ値にバインドされた Binding によって定義される要素を取得します。

GenerateElement(DataGridCell, Object)

列の CellTemplate プロパティ値にバインドされた Binding によって定義される要素を取得します。

GetCellContent(DataGridRow)

この列と指定された行の交差位置にあるセルの Content プロパティ値を取得します。

(継承元 DataGridColumn)
GetCellContent(Object)

この列と指定されたデータ項目を表す行の交差位置にあるセルの Content プロパティ値を取得します。

(継承元 DataGridColumn)
GetHashCode()

この DependencyObject のハッシュ コードを取得します。

(継承元 DependencyObject)
GetLocalValueEnumerator()

どの依存関係プロパティがこの DependencyObject 上にローカルに設定された値を持つかを確認するための、専用の列挙子を作成します。

(継承元 DependencyObject)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
GetValue(DependencyProperty)

DependencyObject のこのインスタンスにある依存関係プロパティの現在の有効値を返します。

(継承元 DependencyObject)
InvalidateProperty(DependencyProperty)

指定した依存関係プロパティの有効値を再評価します。

(継承元 DependencyObject)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
NotifyPropertyChanged(String)

この列を含んでいる DataGrid に、列プロパティが変更されたことを通知します。

(継承元 DataGridColumn)
OnCoerceIsReadOnly(Boolean)

この列を格納する IsReadOnly のプロパティ規則に基づいて DataGrid プロパティの値を決定します。

(継承元 DataGridColumn)
OnCopyingCellClipboardContent(Object)

CopyingCellClipboardContent イベントを発生させます。

(継承元 DataGridColumn)
OnPastingCellClipboardContent(Object, Object)

PastingCellClipboardContent イベントを発生させます。

(継承元 DataGridColumn)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

この DependencyObject の依存関係プロパティの有効値が更新された場合に必ず呼び出されます。 変更された特定の依存関係プロパティは、イベント データで報告されます。

(継承元 DependencyObject)
PrepareCellForEdit(FrameworkElement, RoutedEventArgs)

派生クラスでオーバーライドされた場合、編集の必要に応じてセルの内容を設定します。

(継承元 DataGridColumn)
ReadLocalValue(DependencyProperty)

ローカルの依存関係プロパティの値を返します (存在する場合)。

(継承元 DependencyObject)
RefreshCellContent(FrameworkElement, String)

テンプレートのプロパティ値の変更に応じて、列内のセルのコンテンツを更新します。

SetCurrentValue(DependencyProperty, Object)

依存関係プロパティ値のソースを変更せずにその値を設定します。

(継承元 DependencyObject)
SetValue(DependencyProperty, Object)

依存関係プロパティ識別子を指定して、該当する依存関係プロパティのローカル値を設定します。

(継承元 DependencyObject)
SetValue(DependencyPropertyKey, Object)

依存関係プロパティの DependencyPropertyKey 識別子で指定した読み取り専用の依存関係プロパティのローカル値を設定します。

(継承元 DependencyObject)
ShouldSerializeProperty(DependencyProperty)

シリアル化プロセスが、指定された依存関係プロパティの値をシリアル化する必要があるかどうかを示す値を返します。

(継承元 DependencyObject)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
VerifyAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるように強制します。

(継承元 DispatcherObject)

イベント

CopyingCellClipboardContent

セルのクリップボードの内容が準備された後に発生します。

(継承元 DataGridColumn)
PastingCellClipboardContent

クリップボードの内容がセルに移動される前に発生します。

(継承元 DataGridColumn)

適用対象

こちらもご覧ください