Kat*_*ate 3 c# asp.net gridview
我正在使用一个 gridview,它根据下拉列表中的选择从 SQL 数据库中提取数据。源表有六列用于选择的属性,但根据选择的内容,可能会有一到六列为空(全部为空值)。当该列为空时,我希望将其隐藏,以便页面不那么笨重和混乱。
在过去的几天里我一直在寻找答案,但到目前为止我发现的要么是隐藏你知道为空但我不知道的列,要么是在 SQL 代码中删除它们,但我认为这不是如果在 gridview 代码中调用该列并且查询中不存在该列,则该列有效。
我对 ASP.NET 很陌生,所以如果我的一些术语不正确,我很抱歉!如果您对我的问题有任何疑问,请告诉我。
在此先感谢您的帮助!
你可以尝试:
Visible="false")Visible="true")RowDataBound 方法可能如下所示:
void YourGridview_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
// if this is a SqlDataSource you can use DataRowView,
// otherwise use whatever type is used in the data source
DataRowView rowView = (DataRowView)e.Row.DataItem;
if (!String.IsNullOrEmpty(rowView["ColumnA"]))
YourGridview.Columns[0].Visible = true;
// repeat for your other columns
}
}
Run Code Online (Sandbox Code Playgroud)