如何根据GridView中的某个值隐藏行?如何根据任何值隐藏gridview中的任何行
例如我有一个5列的gridview,当列3的值为空时,我不想显示该行,应该隐藏该行。所以在gridview中,只有那些行应该是可见的,而列3具有任何值。 我认为这可以在GridView的RowDataBound事件中完成,但我怎么能隐藏它呢?
如何根据GridView中的某个值隐藏行?如何根据任何值隐藏gridview中的任何行
例如我有一个5列的gridview,当列3的值为空时,我不想显示该行,应该隐藏该行。所以在gridview中,只有那些行应该是可见的,而列3具有任何值。 我认为这可以在GridView的RowDataBound事件中完成,但我怎么能隐藏它呢?
添加RowDataBound事件和这样做:
if (e.Row.Cells[2].Text == "") e.Row.Visible = false;
希望这会有所帮助。
试试这个:
private void GridView_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if (e.Row.Cells[2].Text == "")
e.Row.Visible = false;
}
只需添加一些信息,Devexpress现在推荐使用CustomRowFilter。它工作得很好。 https://documentation.devexpress.com/#WindowsForms/DevExpressXtraGridViewsBaseColumnView_CustomRowFiltertopic – 2017-01-30 21:46:38
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Visible = false;
}
您可以使用数据绑定方法
protected void GridView1_DataBound(object sender, EventArgs e)
{
foreach (GridViewRow rw in GridView1.Rows)
{
TextBox tx = (TextBox)rw.FindControl("txtHC");
if (tx.Text == "Value")
rw.Visible = false;
}
}
为什么取的有空白性质的记录。使你的查询,以便它相应地提取。 – 2012-01-05 10:48:46
我第二Pankajs评论。当你可以在控制器上做一个简单的检查时,Theres没有意见将它隐藏在视图上。这将节省带宽并且很容易实现。只需在sql语句中添加where子句。 – Doomsknight 2012-01-05 11:09:56