Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 无法在DataGridView中隐藏列_Sql_Vb.net - Fatal编程技术网

Sql 无法在DataGridView中隐藏列

Sql 无法在DataGridView中隐藏列,sql,vb.net,Sql,Vb.net,我在Winform上有四个dgv。通过将Visible属性设置为false,我成功地隐藏了前3个dvg上不需要的列。但是,有一列不会隐藏在第四个dgv上,我不知道为什么 以下是第四台dgv的代码: 与我一起。DataGridView4 .DataSource=BSSJ .AutoGenerateColumns=True .AutoSizeColumnsMode=DataGridViewAutoSizeColumnsMode.AllCells .ColumnsRecID.Visible=False

我在Winform上有四个dgv。通过将Visible属性设置为false,我成功地隐藏了前3个dvg上不需要的列。但是,有一列不会隐藏在第四个dgv上,我不知道为什么

以下是第四台dgv的代码:

与我一起。DataGridView4 .DataSource=BSSJ .AutoGenerateColumns=True .AutoSizeColumnsMode=DataGridViewAutoSizeColumnsMode.AllCells .ColumnsRecID.Visible=False .ColumnsJobID.Visible=False .ColumnsDeleted.Visible=False .ColumnsAmt.DefaultCellStyle.Format=,0.00 .ColumnsAmt.DefaultCellStyle.Alignment=DataGridViewContentAlignment.MiddleRight 以 仍然显示在dgv中的是RecID列。其他两列JobID和Deleted按预期隐藏。 数据源BSSJ是绑定到SQL表的bindingsource。我不能从查询的Select语句中忽略此字段,因为它是与父表的关系中所必需的。 RecID是绑定到BSSJ的表中的主键,但其他三个dgv已成功隐藏其主键。 我可能错过了一些简单的东西,但我就是看不到。
有什么想法吗?

这并不能直接回答为什么您的代码不起作用,我无法复制您的问题

但是,如果删除autosizecolumns代码行,则可以动态设置列的宽度,并可能解决此问题

.Columns("RecID").Width = 0
.Columns("Amt").Width = 200
.Columns("JobID").Visible = False
.Columns("Deleted").Visible = False
.Columns("Amt").DefaultCellStyle.Format = "#,##0.00"
.Columns("Amt").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight

你试过用序数代替名字吗?例如,Columns0.Visible=False而不是ColumnsRecID.Visible=False?可能只是输入错误。是的,我试过了,但该列仍然显示。尝试先发出一个.Columns.Clear,因为您正在自动生成,因为您添加的列可能是现有列之外的列,并且您隐藏的列是正确的,但远离网格的右侧。只是猜测,但我已经做到了。或者尝试一起删除该列,因为如果需要,可以直接从数据源或bindingsource访问它的内容。