问题:在软件开发中,利用datagrid 显示结果集dataset中表的记录,发现不能根据值的长度动态调整列宽
解决过程:通过csdn论坛讨论和搜索相关的帖子,总结了部分前人的经验。
实现过程:
方法介绍:
一 '设置dbgrid样式表
在调整显示列宽之前要给datagrid添加表的样式,即DataGridTableStyle,如下方法
参数dataGridPara 为DataGrid实例,strtableName 为数据库中表的名称
Public Sub setDataGridTablestyle(ByVal dataGridPara As DataGrid, ByVal strtableName As String)
Dim mytablestyle As DataGridTableStyle '声明
mytablestyle = New DataGridTableStyle
mytablestyle.MappingName = strtableName ‘映射表名
dataGridPara.TableStyles.Clear() ’清空datagrid的原有的样式表
dataGridPara.TableStyles.Add(mytablestyle) ‘添加
End Sub
二 调整datagrid列宽
调整datagrid列宽通过如下两个方法实现
'设置datagrid显示格式
Public Sub AutoSizeTable(ByVal myDataGrid As DataGrid)
Dim numCols As Integer
numCols = CType(myDataGrid.