两者都属于容器控件,常用于动态地建立控件链接和在同一个页面中根据不同情况显示不同的内容情景形。
使用Panel控件的好处是只需载入一个页面,即可呈现不同的内容。
asp界面
<asp:Panel ID="pnlStep1" runat="server">
第一步: 输入用户名<br />
用户名:<asp:TextBox ID="txtUser" runat="server"></asp:TextBox><br />
<asp:Button ID="btnStep1" runat="server" Text="下一步"
Onclick="btnStep1_Click" />
</asp:Panel>
<asp:Panel ID="pnlStep2" runat="server">
第二步: 输入用户信息<br />
姓名:<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
电话:<asp:TextBox ID="txtTelephone" runat="server"></asp:TextBox>
<asp:Button ID="btnStep2" runat="server" Text="下一步"
Onclick="btnStep2_Click" />
</asp:Panel>
<asp:Panel ID="pnlSteo3" runat="server" >
第三步: 请确认你输入的信息<br />
<asp:Label ID="lblMag" runat="server"></asp:Label><br />
<asp:Button ID="btnStep3" runat="server" Text="确定"
Onclick="btnStep3_click" />
</asp:Panel>
C#后台
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
pnlStep1.Visible = true;
pnlStep2.Visible = false;
pnlSteo3.Visible = false;
}
}
protected void btnStep1_Click(object sender, EventArgs e)
{
pnlStep1.Visible = false; //设置pnlStep1不可见
pnlStep2.Visible = true; //可见
pnlSteo3.Visible = false; //不可见
}
protected void btnStep2_Click(object sender, EventArgs e)
{
pnlStep1.Visible = false;
pnlStep2.Visible = false;
pnlSteo3.Visible = true;
lblMag.Text = "用户名" + txtUser.Text + "<br />姓名:" + txtName.Text + "<br />电话:" + txtTelephone.Text;
}
protected void btnStep3_click(object sender, EventArgs e)
{
//TODO;将用户信息保存到数据库
}