DataGridComboBoxColumn クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
public ref class DataGridComboBoxColumn : System::Windows::Controls::DataGridColumn
public class DataGridComboBoxColumn : System.Windows.Controls.DataGridColumn
type DataGridComboBoxColumn = class
inherit DataGridColumn
Public Class DataGridComboBoxColumn
Inherits DataGridColumn
- 継承
例
次の例は、 列の各 ComboBox ドロップダウン リストに列挙の値を設定する方法を示しています。 ドロップダウン リストで選択した項目は、 プロパティを SelectedItemBinding 各行に表示されるオブジェクトの プロパティに設定することによってバインドされます。
<NavigationWindow x:Class="DataGrid_CustomColumns.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:core="clr-namespace:System;assembly=mscorlib"
xmlns:local="clr-namespace:DataGrid_CustomColumns"
Title="Customers" Height="300" Width="300" ShowsNavigationUI="False" >
<NavigationWindow.Resources>
<!--Create list of enumeration values-->
<ObjectDataProvider x:Key="myEnum" MethodName="GetValues" ObjectType="{x:Type core:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type Type="local:OrderStatus"/>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
<!--Create an instance of the converter for Email-->
<local:EmailConverter x:Key="EmailConverter" />
</NavigationWindow.Resources>
<NavigationWindow.Content>
<Grid>
<DataGrid Name="DG1" ItemsSource="{Binding}" AutoGenerateColumns="False" >
<DataGrid.Columns>
<DataGridComboBoxColumn Header="Order Status" SelectedItemBinding="{Binding Status}" ItemsSource="{Binding Source={StaticResource myEnum}}" />
</DataGrid.Columns>
</DataGrid>
</Grid>
</NavigationWindow.Content>
</NavigationWindow>
public partial class Window1 : NavigationWindow
{
Class Window1
public Window1()
{
InitializeComponent();
//GetData() creates a collection of Customer data from a database
ObservableCollection<Customer> custdata = GetData();
//Bind the DataGrid to the customer data
DG1.DataContext = custdata;
}
Public Sub New()
' This call is required by the Windows Form Designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
'GetData() creates a collection of Customer data from a database
Dim custdata As ObservableCollection(Of Customer) = GetData()
'Bind the DataGrid to the customer data
DG1.DataContext = custdata
End Sub
//Defines the customer object
public class Customer
{
public string FirstName { get; set; }
public string LastName { get; set; }
public Uri Email { get; set; }
public bool IsMember { get; set; }
public OrderStatus Status { get; set; }
}
'Defines the customer object
Public Class Customer
Public Property FirstName() As String
Public Property LastName() As String
Public Property Email() As Uri
Public Property IsMember() As Boolean
Public Property Status() As OrderStatus
End Class
public enum OrderStatus { None, New, Processing, Shipped, Received };
Public Enum OrderStatus
None
[New]
Processing
Shipped
Received
End Enum
注釈
列挙型など、選択する項目のセットがあるデータを表示するには、 を使用 DataGridComboBoxColumn します。 DataGridComboBoxColumn を使用すると、ユーザーはドロップダウン リストから項目を選択できます。 次の図は、DataGridComboBoxColumn を示しています。
ドロップダウン リストを設定するには、まず、次のいずれかのオプションを ItemsSource 使用して の ComboBox プロパティを設定します。
静的リソース。 詳細については、「 StaticResource Markup Extension」を参照してください。
x:Static コード エンティティ。 詳細については、「 x:Static Markup Extension」を参照してください。
型の ComboBoxItem インライン コレクション。
が ItemsSource 設定されたら、 で ComboBox 選択した項目を、セルの行のデータ項目にバインドします。 バインドは、次のいずれかのプロパティを使用して設定できます。
プロパティ | 説明 |
---|---|
TextBinding | 現在選択されている項目のテキストのバインド パスを設定します。 |
SelectedItemBinding | 現在選択されているオブジェクトのバインド パスを設定します。 |
SelectedValueBinding | バインド パスを、 プロパティで指定された選択した項目の値に SelectedValuePath 設定します。 |
プロパティが IsReadOnly に true
設定されている場合、ユーザーは列を編集できず、ドロップダウン リストを表示できません。
他の種類のデータを表示する場合は、 DataGrid 次の列の種類を指定します。
列の型 | データ表示 |
---|---|
DataGridHyperlinkColumn | URI データを表示するには、 を使用します。 |
DataGridCheckBoxColumn | ブールデータを表示するには、 を使用します。 |
DataGridTextColumn | テキストを表示するには、 を使用します。 |
で DataGrid他のコントロールを使用する場合は、 を使用 DataGridTemplateColumnして独自の列型を作成できます。
コンストラクター
DataGridComboBoxColumn() |
DataGridComboBoxColumn クラスの新しいインスタンスを初期化します。 |
フィールド
DisplayMemberPathProperty |
DisplayMemberPath 依存関係プロパティを識別します。 |
EditingElementStyleProperty |
EditingElementStyle 依存関係プロパティを識別します。 |
ElementStyleProperty |
ElementStyle 依存関係プロパティを識別します。 |
ItemsSourceProperty |
ItemsSource 依存関係プロパティを識別します。 |
SelectedValuePathProperty |
SelectedValuePath 依存関係プロパティを識別します。 |
プロパティ
ActualWidth |
デバイスに依存しない単位 (単位あたり 1/96 インチ) の列の現在の幅を取得します。 (継承元 DataGridColumn) |
CanUserReorder |
ユーザーが列見出しをドラッグして列の表示位置を変更できるかどうかを示す値を取得または設定します。 (継承元 DataGridColumn) |
CanUserResize |
ユーザーがマウスを使用して列幅を調整できるかどうかを示す値を取得または設定します。 (継承元 DataGridColumn) |
CanUserSort |
ユーザーが列見出しをクリックして項目を並べ替えられるかどうかを示す値を取得または設定します。 (継承元 DataGridColumn) |
CellStyle |
列に含まれるセルを表示するときに使用するスタイルを取得または設定します。 (継承元 DataGridColumn) |
ClipboardContentBinding |
クリップボードのセルの内容を取得または設定するときに使用するバインディング オブジェクトを取得または設定します。 |
DataGridOwner |
この列を格納している DataGrid コントロールを取得します。 (継承元 DataGridColumn) |
DefaultEditingElementStyle |
EditingElementStyle プロパティの既定値を取得します。 |
DefaultElementStyle |
ElementStyle の既定値を取得します。 |
DependencyObjectType |
このインスタンスの DependencyObjectType CLR 型をラップする を取得します。 (継承元 DependencyObject) |
Dispatcher |
この Dispatcher が関連付けられている DispatcherObject を取得します。 (継承元 DispatcherObject) |
DisplayIndex |
DataGrid 内の他の列を基準とした列の表示位置を設定または取得します。 (継承元 DataGridColumn) |
DisplayMemberPath |
オブジェクトを視覚的に表現するために使用される、ソース オブジェクト上の値へのパスを取得または設定します。 |
DragIndicatorStyle |
ドラッグ操作中に列ヘッダーに適用するスタイル オブジェクトを取得または設定します。 (継承元 DataGridColumn) |
EditingElementStyle |
編集モードのセルに列で表示される要素のレンダリングに使用するスタイルを取得または設定します。 |
ElementStyle |
編集モードではないセルに列で表示される要素のレンダリングに使用するスタイルを取得または設定します。 |
Header |
列見出しのコンテンツを取得または設定します。 (継承元 DataGridColumn) |
HeaderStringFormat |
列ヘッダーの内容に適用される書式パターンを取得または設定します。 (継承元 DataGridColumn) |
HeaderStyle |
列ヘッダーの描画に使用されるスタイルを取得または設定します。 (継承元 DataGridColumn) |
HeaderTemplate |
列ヘッダーの視覚表示を定義するテンプレートを取得または設定します。 (継承元 DataGridColumn) |
HeaderTemplateSelector |
列ヘッダーに使用するテンプレートを選択するオブジェクトを取得または設定します。 (継承元 DataGridColumn) |
IsAutoGenerated |
列が自動生成されるかどうかを示す値を取得します。 (継承元 DataGridColumn) |
IsFrozen |
列の水平方向のスクロールが禁止されているかどうかを示す値を取得します。 (継承元 DataGridColumn) |
IsReadOnly |
列のセルが編集可能かどうかを示す値を取得または設定します。 (継承元 DataGridColumn) |
IsSealed |
このインスタンスが現在シールされている (読み取り専用である) かどうかを示す値を取得します。 (継承元 DependencyObject) |
ItemsSource |
コンボ ボックス コントロールのコンテンツの生成に使用するコレクションを取得または設定します。 |
MaxWidth |
列の幅の上限を取得または設定します。 (継承元 DataGridColumn) |
MinWidth |
列の幅の下限を取得または設定します。 (継承元 DataGridColumn) |
SelectedItemBinding |
選択中の項目のバインディングを取得または設定します。 |
SelectedValueBinding |
SelectedValuePath を使用して取得される、選択されている項目の値を取得または設定します。 |
SelectedValuePath |
SelectedValue から SelectedItem を取得するために使用するパスを取得または設定します。 |
SortDirection |
列の並べ替え方向 (昇順または降順) を取得または設定します。 (継承元 DataGridColumn) |
SortMemberPath |
メンバーの並べ替えの基準にするプロパティ名、または階層をピリオドで区切ったプロパティ名を取得または設定します。 (継承元 DataGridColumn) |
TextBinding |
ComboBox コントロールのテキスト ボックス部分のテキストのバインディングを取得または設定します。 |
TextBlockComboBoxStyleKey |
読み取り専用のコンボ ボックスに適用するスタイルのリソース キーを取得します。 |
Visibility |
列の可視性を取得または設定します。 (継承元 DataGridColumn) |
Width |
列の幅または自動サイズ調整モードを取得または設定します。 (継承元 DataGridColumn) |
メソッド
イベント
CopyingCellClipboardContent |
セルのクリップボードの内容が準備された後に発生します。 (継承元 DataGridColumn) |
PastingCellClipboardContent |
クリップボードの内容がセルに移動される前に発生します。 (継承元 DataGridColumn) |
適用対象
.NET