簡體   English   中英

無法隱藏 DataGridView 中的列

[英]Cannot Hide Column in a DataGridView

我在 Winform 上有四個 dgv。 我通過將前 3 個 dvg 的“可見”屬性設置為 false 成功地隱藏了不需要的列。 但是,有一列不會隱藏在第四個 dgv 上,我不知道為什么。

這是第四個 dgv 的代碼:

With Me.DataGridView4
    .DataSource = BSSJ
    .AutoGenerateColumns = True
    .AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
    .Columns("RecID").Visible = False
    .Columns("JobID").Visible = False
    .Columns("Deleted").Visible = False
    .Columns("Amt").DefaultCellStyle.Format = "#,##0.00"
    .Columns("Amt").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
End With

仍然出現在 dgv 中的是“RecID”列。 另外兩列“JobID”和“Deleted”按預期隱藏。
數據源“BSSJ”是綁定到 SQL 表的綁定源。 我不能從查詢的 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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM