我有两个GridView,即GridView1和GridView2。它们位于相同的位置,我声明了一个布尔变量即flag。当flag = false时,我想这样做,GridView1是可见的,GridView2是不可见的。当flag = true时,GridView2可见,GridView1不可见。这是我的代码。
private bool flag=false;
if(flag==false)
{
GridView1.Visible=true;
GridView2.Visible=false;
flag=true;
}
else
{
GridView2.Visible=true;
GridView1.Visible=false;
flag=false;
}
在RunTime中, 虽然GridView2变得不可见,但它的空间出现在GridView1下。我怎么能一次显示一个网格。
使用Regrads,
答案 0 :(得分:2)
您可以将 GridView 放入Div。
<div id="div1" runat="server">
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
</div>
<div id="div2" runat="server">
<asp:GridView ID="GridView2" runat="server">
</asp:GridView>
</div>
在代码方
if(flag==false)
{
div1.Visible=true;
div2.Visible=false;
flag=true;
}
else
{
div2.Visible=true;
div1.Visible=false;
flag=false;
}
答案 1 :(得分:0)
在ViewState中存储标记值。
if (ViewState["flag"] == null)
{
ViewState["flag"] = false;
}
bool flag = (bool)ViewState["flag"];
GridView1.Visible = flag;
GridView2.Visible = !flag;
ViewState["flag"] = !flag;