我有一个Gridview,其中包含可以触发emptydata模板的过滤器。然而,当显示它时,我仍然可以看到我的gridview的轮廓。当数据不存在时,如何使Gridview消失?
答案 0 :(得分:10)
protected void GridView1_DataBound(object sender, EventArgs e)
{
if (this.GridView1.Rows.Count == 0)
this.GridView1.Visible = false;
}
答案 1 :(得分:3)
<asp:Gridview id="gridview" ......
Visible='<%# ((ICollection)gridview.DataSource).Count == 0 ? false : true %>'>
答案 2 :(得分:0)
隐藏控件本身,Visible属性设置为false,或隐藏其父控件(即包含面板)。
答案 3 :(得分:0)
只需将DataSource
设为空,然后重新Bind()
GridView
,它就应该隐藏自己!
myGridView.DataSource = null;
myGridView.DataBind();
除了小心使用.Visible
之外,以后发现它是不可能的。如果您必须使用.Visible = false;
我建议您使用myGridview.Attributes.Add("style","display:none");