C# WPF:如何自动生成行标题而不仅仅是列标题?
我有一个带有数据网格的WPF应用程序。我使用C# WPF:如何自动生成行标题而不仅仅是列标题?,c#,wpf,header,row,C#,Wpf,Header,Row,我有一个带有数据网格的WPF应用程序。我使用AutoGenerateColumns=“True”来填充它,因为列和行计数并不总是相同的 问题是它只自动生成列标题,而不是行标题。所以我决定做他们在这里做的事情:但是我不能把AutoGenerateColumns=“False”放在那里,因为我在那里绑定了一个来自数据集的数据表,它的大小并不总是相同的——头并不总是包含相同的文本 使用上面链接中的代码,我既有列标题也有行标题(这是通过在xaml代码中手动绑定来设置的),但我仍然得到了第一列(标题)。我
AutoGenerateColumns=“True”
来填充它,因为列和行计数并不总是相同的
问题是它只自动生成列标题,而不是行标题。所以我决定做他们在这里做的事情:但是我不能把AutoGenerateColumns=“False”
放在那里,因为我在那里绑定了一个来自数据集的数据表,它的大小并不总是相同的——头并不总是包含相同的文本
使用上面链接中的代码,我既有列标题也有行标题(这是通过在xaml代码中手动绑定来设置的),但我仍然得到了第一列(标题)。我无法删除第一列-异常将消失
如何获取行标题,而不必像在链接中那样手动设置,有什么提示吗?或者有没有办法删除我用作行标题的第一列
旁白:我知道这里已经有人问过类似的问题了,但我没有发现任何像我这样的问题,也没有找到对我有帮助的答案:|你可以在代码中创建一种风格:
Style rowHeaderStyle=new System.Windows.Style(typeof(DataGridRowHeader));
rowHeaderStyle.Setters.Add(new Setter(DataGridRowHeader.ContentProperty,new Binding("SomeField")));
simpleDataGrid.RowHeaderStyle = rowHeaderStyle;
并在自动生成列事件中删除此字段:
private void simpleDataGrid_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
if (e.PropertyName == "SomeProperty")
e.Cancel = true;
}
谢谢!我有第一部分。只是不知道如何禁用第一列的生成,所以我不会让它出现在那个里。现在它可以按照我的要求工作了:)我刚刚进行了实验,发现还可以在
数据网格中以XAML的形式编写第一块代码:
as: