C# 增加Windows窗体DataGrid(非DataGridView)中列标题的高度
我正在开发一个Windows窗体应用程序,我有一个C# 增加Windows窗体DataGrid(非DataGridView)中列标题的高度,c#,winforms,datagrid,.net-1.1,C#,Winforms,Datagrid,.net 1.1,我正在开发一个Windows窗体应用程序,我有一个DataGrid,我正在尝试增加列标题的高度 我知道datagridview是如何实现的,但我不确定DataGrid 我有一个名为“实际数量”的列,显示如下: 我可以知道增加列标题高度的方法吗?中的列标题高度是根据属性计算的,并存储在一个私有字段中。您可以使用反射获取字段,并通过以下方式更改其值: var p = typeof(DataGrid).GetField("headerFontHeight", System
DataGrid
,我正在尝试增加列标题的高度
我知道datagridview是如何实现的,但我不确定DataGrid
我有一个名为“实际数量”的列,显示如下:
我可以知道增加列标题高度的方法吗?中的列标题高度是根据属性计算的,并存储在一个私有字段中。您可以使用反射获取字段,并通过以下方式更改其值:
var p = typeof(DataGrid).GetField("headerFontHeight",
System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
p.SetValue(dataGrid1, dataGrid1.HeaderFont.Height * 2);
var m = typeof(DataGrid).GetMethod("OnLayout",
System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
m.Invoke(dataGrid1, new object[] { null });
dataGrid1.Invalidate();
您可以指定您认为足够的高度,也可以计算所有列的文本高度,并将字段设置为最大值。这是CaptionFont。Size@HansPassant我认为这只是增加了标题中文本的大小,而不是标题行的高度?我有一个多行的列名,但有两行不适合当前标题row@Dev它真的是
.net1.1
还是因为DataGrid
而被标记?如果只是因为DataGrid
,您可以将标记更改为.Net
。