使用模板WPF动态生成DataGrid的行和列标题

时间:2015-07-06 20:34:58

标签: c# wpf mvvm datagrid wpfdatagrid

我正在使用模板填充网格,我不知道行和列的数量,这些将通过类似下面的类中的WCF服务生成:

 class GridPoint:
    { 
string Rowheader;
float cellvalue;
     }

class ColumnData: List<GridPoint>
{

}

所以datagrid代码是这样的:

 MyGrid: DataGrid
{
InitializeComponent();
 private void DataGrid_AutoGeneratingColumn(objectsender,DataGridAutoGeneratingColumnEventArgs e) 
{
 var col = new DataGridTextColumn {Binding = new Binding(e.PropertyName), Header = e.PropertyName};
        e.Column = col;

}
}

我找到了一种使用this帖子中的数据模板自动生成列的方法。但是,他们没有提到为每个点添加行标题。感谢您帮助将行标题添加到列样式中。

最终产品应如下所示:

    Column1   Column2 
Row1    123       123
Row2    811       811 
Row3    123       123

我能想到的一个黑客只是生成一个额外的列,其类型与列标题样式不同,并在其中添加我的行点。

1 个答案:

答案 0 :(得分:0)

如果您正在讨论在WPF中填充DataGrid,除非您设置

 AutoGenerateColumns="False"

在您的XAML中,您的网格将自动从公共属性构建列。

除非由于某种原因需要对最大数量设置硬限制,否则行数并不重要。