列ヘッダ・表示項目の設定
前回、データオブジェクトの内容がDataGridに表示できた。
列ヘッダであるが、"id"と"name"を "ID"、"名前" の列名で表示させたい。
また、subitems列は不要なので表示させたくない。
この場合、MainWindow.xamlのDataGridに DataGrid.Columns要素 を追加し、その中に DataGridTextColumn要素を追加する。
DataGridTextColumn要素が1項目(1列)に相当。
さらに、DataGridTextColumn要素に Header属性を追加し表示する列名を設定、また Binding属性に 表示する項目を指定する。
ここで指定する項目は DataGrid の ItemsSource で指定したデータオブジェクトが基準となる。
また、自動的に列生成しないように DataGrid要素に AutoGenerateColumns要素を追加しFalseを指定する。
MainWindow.xaml:
2データしか存在しないが、3行目に空白行が表示されている。
これを消すには DataGridに CanUserAddRows属性を追加しFalseを指定する。
また、よく見ると最左列に小さい余白が出来ている。
これは行ヘッダと思われ、これを消すには DataGridに HeadersVisibility属性を追加しColumn (列ヘッダのみ表示) を指定する。
列ヘッダであるが、"id"と"name"を "ID"、"名前" の列名で表示させたい。
また、subitems列は不要なので表示させたくない。
この場合、MainWindow.xamlのDataGridに DataGrid.Columns要素 を追加し、その中に DataGridTextColumn要素を追加する。
DataGridTextColumn要素が1項目(1列)に相当。
さらに、DataGridTextColumn要素に Header属性を追加し表示する列名を設定、また Binding属性に 表示する項目を指定する。
ここで指定する項目は DataGrid の ItemsSource で指定したデータオブジェクトが基準となる。
また、自動的に列生成しないように DataGrid要素に AutoGenerateColumns要素を追加しFalseを指定する。
MainWindow.xaml:
<DataGrid ItemsSource="{Binding items}" AutoGenerateColumns="False"> <DataGrid.Columns> <DataGridTextColumn Header="ID" Binding="{Binding id}" /> <DataGridTextColumn Header="名前" Binding="{Binding name}" /> </DataGrid.Columns> </DataGrid>実行結果:
2データしか存在しないが、3行目に空白行が表示されている。
これを消すには DataGridに CanUserAddRows属性を追加しFalseを指定する。
また、よく見ると最左列に小さい余白が出来ている。
これは行ヘッダと思われ、これを消すには DataGridに HeadersVisibility属性を追加しColumn (列ヘッダのみ表示) を指定する。
<DataGrid ItemsSource="{Binding items}" AutoGenerateColumns="False" CanUserAddRows="False" HeadersVisibility="Column">実行結果:
次回記事:VisualBasic+WPF+YAML #5:DataGridへの表示 3
-- 以上 --
VisualBasic, WPF, YAML
0 件のコメント:
コメントを投稿