我想创建一个WPF Datagrid,它有行和列的标题,因此对应于以下excel网格:
特别是,蓝色单元格是固定的,这意味着我认为它们需要是标题。
请注意,我想创建一个包含每一行的List,T如下:
class T
{
double ag;
double fZero;
double tcStar;
}
如何使用DataGrid创建它?
答案 0 :(得分:4)
使用DataGrid.RowHeaderTemplate
DataGrid
控件具有RowHeaderTemplate
属性,用于定义DataTemplate
的{{1}}。对于列标题,请使用DataGridRowHeader
。请检查此link。
ColoumnHeaderStyle
实际上,此示例为行中显示的每个国家/地区设置相应的大陆。我认为此link可能对您有所帮助
答案 1 :(得分:2)
您可以使用DataGridTemplateColumn
添加列标题。
<DataGrid x:Name="dg" AutoGenerateColumns="False" >
<DataGrid.Columns>
<DataGridTemplateColumn Header="Ag" Width="SizeToCells" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
//add items
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Header="Fo" Width="SizeToCells" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
//add items
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Header="Tc" Width="SizeToCells" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
//add items
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
您可以使用RowHeaderTemplate
添加行标题。