2013-02-04 99 views
3

我有自動生成的列在這裏從visitid等。然而,第一列是一個templatefield。現在我想隱藏VisitID。我試過這段代碼,但沒有奏效。我使用VB作爲我隱藏隱藏一個自動生成的gridview的列與一個templatefield

e.Row.Cells(1).Visible = False 

enter image description here

+0

在哪個事件處理函數中使用這一行:'e.Row.Cells(1).Visible = False'? – mshsayem

+1

我試過它rowcreated和rowdatabound它說 「指定的參數超出了有效值的範圍。參數名稱:索引」 – Ley47

回答

4

我已經嘗試了幾種方法,但也以此代碼結束,它工作最後我只是添加了一個條件。我很抱歉也許我缺乏信息。我在gridview中分頁..這是我的工作代碼。

Protected Sub Gdvisitor_RowCreated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles Gdvisitor.RowCreated 
    If (e.Row.Cells.Count > 1) Then 
     e.Row.Cells(1).Visible = False 
    End If 
End Sub 

起初它是」 ...... cells.count < 0" 和沒有工作的指數仍超出範圍,但是當我把它改爲1。它的工作。我認爲分頁與它有關。雖然我不確定...謝謝你的所有幫助

+0

哇謝謝!!!!!!這似乎是一個簡單的問題,當我開始,但它花了很長時間才找到答案。再次感謝Ley47! – Greesemonkey3

2

要隱藏你需要設置可見爲false,不列單元格的列。

gridView1.Columns(1).Visible = False 
+0

我試過這個,這是我做到這一點,並把它放在數據綁定後,但它說「索引是參數名稱:索引「 我不擅長這個,我把它放在錯誤的地方? – Ley47

+0

你必須把它綁定網格後,像gridView.DataSource = dt; gridView1.DataBind(); gridView1.Columns(1).Visible = False – Adil

+0

嗯,這就是我如何做到這一點:Gdvisitor.DataSource = dt; Gdvisitor.DataBind(); Gdvisitor.Columns(1).Visible = False .......但我得到了那個錯誤,我試圖用0代替1,它隱藏了查看訪問者列,但對下一個索引它不起作用了 – Ley47

2

嘗試......

GridView.Columns(1).Visible = false 
1

嘗試......

 gridview name.columns(column number).visible=false; 

如果妳想要隱藏的第3列使用上面的代碼爲:

 gridview name.columns(3).visible=false; 
0

Autogeneraterd網格的列不能被隱藏。如果您執行像dg.columns.count這樣的支票,您將獲得0而不是6

爲每一個使用模板列或使用jQuery執行此操作。

相關問題