2011-07-28 12 views
1

は、私は2つのGridViewsすなわちGridView1とGridView2。彼らは同じ場所にありていると私はブール変数、すなわちフラグを宣言します。私は、フラグ= false、GridView1が表示され、GridView2が見えないときにそれを行いたいと思います。 flag = trueの場合、GridView2は表示され、GridView1は不可視です。ここに私のコードです。ランタイムで二つのGridView

private bool flag=false; 
if(flag==false) 
{ 
    GridView1.Visible=true; 
    GridView2.Visible=false; 
    flag=true; 
} 
else 
{ 
    GridView2.Visible=true; 
    GridView1.Visible=false; 
    flag=false; 
} 

もののGridView2が見えなくなる、そのスペースがGridView1の下に登場しています。一度にグリッドを表示するにはどうすればいいですか? Regradsで

+0

ニースの質問。 +1 – Sagotharan

答えて

2

あなたは本部の両方GridViewのを置くことができます。 ViewStateに

<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; 
} 
+0

あなたの注意と答えに感謝します。私はあなたのコードでOKです。 – lelewin

0

コード側で保存フラグ値。

 if (ViewState["flag"] == null) 
     { 
      ViewState["flag"] = false; 
     } 

     bool flag = (bool)ViewState["flag"]; 

     GridView1.Visible = flag; 
     GridView2.Visible = !flag; 
     ViewState["flag"] = !flag; 
+0

OPの問題は、GridViewが表示されていなくても、非表示のGridViewのスペースがまだそこに残っていたことです。コードスニペットはその問題に対処しません。 – Tim