C# Windows Mobile应用程序中DataGrid的AutoSizeColumnsMode
在Windows应用程序中,DataGrid有一个属性AutoSizeColumnsMode,用于确定可见列的自动大小模式 我正在使用.Net Framework 3.5开发Windows Mobile应用程序,DataGrid没有类似的属性C# Windows Mobile应用程序中DataGrid的AutoSizeColumnsMode,c#,datagridview,windows-mobile,compact-framework,C#,Datagridview,Windows Mobile,Compact Framework,在Windows应用程序中,DataGrid有一个属性AutoSizeColumnsMode,用于确定可见列的自动大小模式 我正在使用.Net Framework 3.5开发Windows Mobile应用程序,DataGrid没有类似的属性 如何实现类似的功能?我没有尝试在单元格值更改时动态更改列宽,但我使用此方法从标题设置列宽。您可能需要添加额外的填充以获得最佳效果 private static int MeasureTextWidth(Control c, string text)
如何实现类似的功能?我没有尝试在单元格值更改时动态更改列宽,但我使用此方法从标题设置列宽。您可能需要添加额外的填充以获得最佳效果
private static int MeasureTextWidth(Control c, string text)
{
if (c == null)
{ return -1; }
using (Graphics g = c.CreateGraphics())
{
return (int)Math.Ceiling(g.MeasureString(text, c.Font).Width);
}
}
编辑:额外注意:我已经尝试通过使用自己的逻辑覆盖列的width属性来实现列的自动宽度特性。不幸的是,DataGridColumn似乎没有使用Width属性来获取其宽度。以防万一你想走那条路 您是指.NET Compact Framework中的
DataGrid
类吗