开发者

Can I use the same content page with two different master pages?

I have开发者_如何学Python an asp.net content page which is used inside of a master page (with header, menu and some links). I would like to reuse it in a different context without the master page (to not display the header and menu there), or with an empty master page if this is somehow possible. I don't want to violate DRY principle by taking the whole page and creating a standalone clone of it for obvious reasons. Is this somehow possible ?


Yes, you can set the master page dynamically in the content pages Page_PreInit method:

private void Page_PreInit(object sender, EventArgs e)
{
    this.MasterPageFile = "MyMasterPage.master"
}

Set up some logic to dynamically choose which master page filename to pass in, and you are now sharing one content page with many master pages.


How about wrapping-up the shared content in a user control?

A user control is a kind of composite control that works much like an ASP.NET Web page—you can add existing Web server controls and markup to a user control, and define properties and methods for the control. You can then embed them in ASP.NET Web pages, where they act as a unit.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜