用户控件嵌套调用的问题

foolfish_yanzi 2009-07-16 04:38:06
问个问题:

我做了个main.ascx的用户控件,用来盛放其他用户控件:里面放一个PlaceHolder,根据传进的参数来决定显示哪个控件。

在default.aspx页面上方了几个HyperLink以及main.ascx控件,点击不同的HyperLink时,NavigateUrl的地址后面传递了一个参数,让main.ascx获取,以决定页面显示的控件。

但是现在点击HyperLink时,总是不能显示真确的控件,页面内容没有变化,这是怎么回事?

main.ascx后台主要相关代码

protected void Page_Load(object sender, EventArgs e)
{
Control con1;
con1 = this.Page.LoadControl("./usercontrols/UserEdit.ascx");
PlaceHolder1.Controls.Add(con1);

if (Page.IsPostBack)
{
string strUrl = Request.QueryString["strUrl"].ToString();
Response.Write(strUrl);


if (strUrl.Length != 0)
{
switch (strUrl)
{
case "登录":
PlaceHolder1.Controls.Clear();
con1 = this.Page.LoadControl("~/usercontrols/UserLogin.ascx"); //怎么又不能动态加载了呢?
break;
case "注册":
PlaceHolder1.Controls.Clear();
con1 = this.Page.LoadControl("~/usercontrols/UserAdd.ascx");
break;
case "修改个人资料":
PlaceHolder1.Controls.Clear();
con1 = this.Page.LoadControl("~/usercontrols/UserEdit.ascx");
break;
case "用户列表":
PlaceHolder1.Controls.Clear();
con1 = this.Page.LoadControl("~/usercontrols/UserList.ascx");
break;

}

}
}


}



default.aspx相关内容:
<asp:HyperLink ID="hplLogin" runat="server" NavigateUrl="~/Default.aspx?strUrl=登录">登录</asp:HyperLink>
<asp:HyperLink ID="hplReg" runat="server" NavigateUrl="~/Default.aspx?strUrl=注册">注册</asp:HyperLink>
...全文
119 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ziyan4444 2012-08-03
  • 打赏
  • 举报
回复
我觉得楼主的头像好可怕

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧