Visual Studio:2010 框架:4.0 代码背后:VB.Net
我正在asp.net中构建网站。我使用网格视图来显示数据。我只想在可见列上使用垂直线。为此,我使用了gridview的gridline属性。但它适用于gridview中的所有列。在网格视图中,有一些不可见(隐藏)列。所以我不想申请隐藏的那些列。我试图减少列宽但不起作用。 那么如何隐藏隐藏列的网格线。附加屏幕截图我的网格视图。
减少代码下面使用的列的宽度:
gridview1.Columns (8).ItemStyle.Width = 0
我使用下面的属性在网格视图上设置垂直线。
gridview1.GridLines="Vertical"
以下是我的网格视图的屏幕截图:
答案 0 :(得分:1)
您应该在ColumnCollection
事件中实际切换DataBound
的可见性。
Protected Sub gridview1_DataBound(sender As Object, e As System.EventArgs) Handles gridview1.DataBound
gridview1.Columns(7).Visible = False
gridview1.Columns(8).Visible = False
gridview1.Columns(9).Visible = False
End Sub
答案 1 :(得分:0)
您可以在rowdatabound事件中隐藏列。假设要隐藏的列具有索引7,8,9
protected void gridview1_RowDataBound(object sender, GridViewRowEventArgs e)
{
e.Row.Cells[7].Visible = false;
e.Row.Cells[8].Visible = false;
e.Row.Cells[9].Visible = false;
}
在aspx中将rowdatabound事件附加到上面的函数,方法是将onrowdatabound属性赋值给gridview
<asp:Gridview id="gridview1" runat="server" onrowdatabound="gridview1_RowDataBound">
.
.
.
</asp:GridView>