标题:怎么控制datagrid中字段的宽度
只看楼主
wangfuli
Rank: 4
等 级:贵宾
威 望:12
帖 子:206
专家分:10
注 册:2005-11-11
 问题点数:0 回复次数:2 
怎么控制datagrid中字段的宽度
我想控制datagrid中字段的宽度,使字段的宽度有的长,有的短,使每个字段的宽度都适合其中显示的内容长度,请问怎么做?
谢谢
搜索更多相关主题的帖子: datagrid中 字段 宽度 长度 
2006-04-17 20:48
wugong
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2005-8-1
得分:0 

Sub datagrid_fill()
'填充显示
DataGrid1.TableStyles.Clear()
DataGrid1.Visible = True
DataGrid1.Dock = DockStyle.Fill
mydataset.Tables.Clear()
oledbconn = New OleDb.OleDbConnection(strConnect)
oledbadapter = New OleDbDataAdapter(sql, oledbconn)
oledbadapter.Fill(mydataset, "表名")
oledbadapter.Dispose()
oledbconn.Close()
mytable = mydataset.Tables("表名")
DataGrid1.DataSource = mytable
AddHandler mytable.ColumnChanged, New DataColumnChangeEventHandler(AddressOf columnchanged)
AddHandler mytable.RowDeleted, New DataRowChangeEventHandler(AddressOf rowdeleted)

Dim ts As New DataGridTableStyle
Dim aColumnTextColumn As DataGridTextBoxColumn
ts.MappingName = mytable.TableName
Dim numCols As Integer
numCols = mytable.Columns.Count
Dim i As Integer = 0
Do While (i < numCols) '重绘所有的列
aColumnTextColumn = New DataGridTextBoxColumn
AddHandler aColumnTextColumn.TextBox.KeyDown, New KeyEventHandler(AddressOf Column_Keydown)
'让列中的单元格来响应KeyPress事件
aColumnTextColumn.HeaderText = mytable.Columns(i).ColumnName
aColumnTextColumn.MappingName = mytable.Columns(i).ColumnName
aColumnTextColumn.Width = 20 '设置列宽
ts.GridColumnStyles.Add(aColumnTextColumn) '增加一种自定义的column风格
i = (i + 1)
Loop
DataGrid1.TableStyles.Clear()
DataGrid1.TableStyles.Add(ts) '增加一种自定义的表风格
'事件处理程序,同样适用于其它Textbox用于数值框处理的情况。
'MessageBox.Show("增加了样式风格")
End Sub

2006-04-18 09:45
wangfuli
Rank: 4
等 级:贵宾
威 望:12
帖 子:206
专家分:10
注 册:2005-11-11
得分:0 
谢谢楼上的兄弟

2006-04-20 08:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-58135-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.224853 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved