dataGrid的问题?
用datagrid显示查询结果时,怎么调整列宽。还有怎么去掉不想显示的列(自动加的)。 问题点数:0、回复次数:7Top
1 楼drk928(一起看斜阳)回复于 2005-06-04 17:20:34 得分 0
要设置绑定样式..
'初始化DATAGRID样式
Public Sub Init_DataGridColumnHeaderText(ByVal dg As DataGrid, ByVal fields As String, ByVal fieldnames As String, ByVal fieldwid As String, Optional ByVal dispRowHear As Boolean = True)
dg.TableStyles.Clear()
Dim datagridtablestyle1 As New DataGridTableStyle()
Dim i_len As Integer
Dim Ary_Eng() As String = fields.Split(",")
Dim Ary_Chn() As String = fieldnames.Split(",")
Dim Ary_Wid() As String = fieldwid.Split(",")
dg.TableStyles.AddRange(New System.Windows.Forms.DataGridTableStyle() {datagridtablestyle1})
datagridtablestyle1.DataGrid = dg
For i_len = 0 To UBound(Ary_Eng)
Dim DataGridTextBoxColumn1 As New DataGridTextBoxColumn()
DataGridTextBoxColumn1.Format = ""
DataGridTextBoxColumn1.FormatInfo = Nothing
DataGridTextBoxColumn1.HeaderText = Ary_Chn(i_len)
DataGridTextBoxColumn1.MappingName = Ary_Eng(i_len)
DataGridTextBoxColumn1.Width = Ary_Wid(i_len)
datagridtablestyle1.GridColumnStyles.Add(DataGridTextBoxColumn1)
Next
datagridtablestyle1.HeaderForeColor = Color.Black
datagridtablestyle1.MappingName = dg.DataMember
datagridtablestyle1.AlternatingBackColor = Color.SeaShell
datagridtablestyle1.GridLineStyle = DataGridLineStyle.Solid
datagridtablestyle1.GridLineColor = Color.Purple
datagridtablestyle1.HeaderBackColor = Color.LightSteelBlue
datagridtablestyle1.RowHeaderWidth = 0
datagridtablestyle1.RowHeadersVisible = dispRowHear
dg.AllowSorting = False
dg.TableStyles(0).AllowSorting = False
' dg.ReadOnly = True
'dg.GridLineStyle = DataGridLineStyle.Solid
'dg.AlternatingBackColor = Color.PowderBlue
End SubTop
2 楼banshan(半山)回复于 2005-06-04 18:05:25 得分 0
能不能讲的再详细一点,我还是不懂。
是这样两个表:
——————— ————————
|id 主键| | id 主键 |
|账户号 | ———————| 帐户 |
|财产名称 | ————————
|数量 |
|购买日期 |
|成本 |
|估值 | —————————
要求显示出来为:财产名称 数量 购买日期 成本 估值 帐户
但实际显示为: 财产名称 数量 购买日期 成本 估值 帐户 id Expr1Top
3 楼zhilong(子龙)回复于 2005-06-04 21:08:07 得分 0
关注。Top
4 楼hamadou(闵峰--为了理想而奋斗)回复于 2005-06-05 08:51:14 得分 0
使用表样式。设置隐藏的列的width=0Top
5 楼Ninputer(装配脑袋)回复于 2005-06-05 11:25:33 得分 0
不想显示的列,就从TableMappings里面去除,将width设为0还要消耗那份资源
下面两个是MSDN的连接,请打开帮助后输入到地址栏
ms-help://MS.MSDNQTR.2003FEB.2052/vbcon/html/vbtskMappingDataSourceColumnsToDatasetDataTableColumns.htm
ms-help://MS.MSDNQTR.2003FEB.2052/vbcon/html/vbconTableMappingInDataAdapters.htmTop
6 楼henrysap(henry)回复于 2005-06-08 17:36:23 得分 0
设置Datagrid的样式就可以了Top
7 楼glory_sql(想你)回复于 2005-06-10 16:55:16 得分 0
把寬度設置為0,就okTop




