2014-10-28 93 views
0

使用GridView1.Columns(0).Visible = False隱藏fld1(第一列),但我想隱藏每行旁邊的編輯選項。你是怎樣做的?如何隱藏GridView中的編輯列?

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:AttendanceDBConnectionString %>" 
        SelectCommand="SELECT [fld1], [fld2], [fld3], [fld4], [fld5] FROM [fld6] ORDER BY [fld1], [fld2], [fld3]"> 
</asp:SqlDataSource> 

<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True" 
       AutoGenerateEditButton="True" DataSourceID="SqlDataSource1" PageSize="100"> 
</asp:GridView> 

Protected Sub GridView1_DataBound(sender As Object, e As EventArgs) Handles GridView1.DataBound 
    GridView1.Columns(0).Visible = False 
End Sub 

回答

1

隱藏在DataGrid左側的 「編輯」 一欄,在您的ASPX文件替換此:

AutoGenerateEditButton="True" 

有了這個:

AutoGenerateEditButton="False" 

從文檔上MSDN

當AutoGenerateEditButton屬性設置爲true時,一列...帶有用於e的編輯按鈕ach數據行會自動添加到GridView控件中。


如果你想這樣做的代碼隱藏,您可以使用您設置的ID訪問相同的特性:

// test whether the grid is read-only for the current user 
if (userIsReadOnly) 
    GridView1.AutoGenerateEditButton = false; 
+0

對不起,我忘了提及,我想以編程方式做到這一點。我試圖讓一個可以編輯的組和其他只能看到表格的組。 – CodeEngine 2014-10-28 19:54:30

+0

已更新的答案。這是你想到的嗎? – 2014-10-28 19:55:44

+0

是的。謝謝格蘭特! – CodeEngine 2014-10-28 20:01:20

0

有一個數據網格視圖屬性,你需要查找。這是你想隱藏的行標題。看到額外的專欄?您可以隱藏圖標,也可以隱藏包含它的列/標題。

datagridview1.RowHeadersVisible = False 

datagridview1.ShowEditingIcon = False 

你也可以做到這一點在DataGridView的屬性窗口。

+0

他標記的問題asp.net。那是asp.net還是WinForms? – 2014-10-28 19:38:32

+0

這是vb.net,他也標記。但事實上,更接近WinForms。我通常在VS屬性窗口中執行此操作。 – Kat 2014-10-28 19:39:27

+0

我沒有看到你提到的方法。它顯示:Gridview1.Showheader或GridView1.ShowFooter,但沒有任何一個顯示在上面。 – CodeEngine 2014-10-28 19:50:39