2013-02-26 97 views
8

如何隱藏DataGridview中的特定列及其標題 ,同時能夠使用其值? (只是沒有顯示)。 以下代碼不起作用。如何隱藏dataGridView的特定列?

gridview.Rows[e.RowIndex].Cells[11].Visible = false; 
+0

也許設置寬度= 0 ? – Vogel612 2013-02-26 13:19:04

+0

你可以使用'datakeynames',看到我的答案:) – Stuart 2013-02-26 13:42:25

回答

1

添加列名/ s到網格視圖的DataKeyNames ...

<asp:gridview id="GridView1" runat="server" datakeynames="ColumnName" onselectedindexchange="GridView1_SelectedIndexChanged"></asp:gridview> 

你就可以訪問數據鍵後面的代碼...

protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    textbox.Text = GridView1.DataKeys[GridView1.SelectedIndex].Values["ColumnName"].ToString(); 
} 

用逗號分隔時可以添加更多DataKeyNames。如果你不想要,那麼你根本不需要將該列添加到GridView

+0

謝謝,但我需要一個windform解決方案:) – Breeze 2013-02-26 13:46:41

+0

道歉,我沒有發現!也許有一個類似的winform的解決方案... – Stuart 2013-02-26 13:48:00

0

這是100%正確的解決方案.... this.dataGridView1.Columns[0].Visible = false;

0
如果你想隱藏的GridView列

,你應該有一個條件 ..

if(userlevel != 'Administrator') { GridView.Columns["ColumnName"].Visible = false; }