我有masterpage
,其上有usercontrol
(changecity.ascx
)。现在我在2个aspx页面上使用相同的母版页:
但我想仅在changecity.ascx
上展示selectcity.aspx
。
我可以设置s visibility from child pages but I don't want to do that because page events of
changecity.ascx`仍在解雇。
我希望将其从masterpage
中完全删除,以便不会触发changecity.ascx
的任何事件。
到目前为止我做了什么:---
我在masterpage
的{{1}}事件中从signup.aspx
移除了控件。但是preinit
的页面生命周期事件仍在触发。我怎样才能防止这种情况。
答案 0 :(得分:0)
您可以尝试在代码隐藏中加载控件并将其添加到页面中。如果您只是在.aspx中尝试if,它将被渲染但只是不输出。
ASPX:
<asp:placeholder id="changeCityControl" runat="server" />
代码隐藏:
ChangeCityControl ccControl = (ChangeCityControl)LoadControl("/changecity.ascx")
if (renderChangeCityControl){
changeCityControl.Controls.Add(ccControl);
}
有关详细信息,请参阅this微软页面。