首页 > 编程 > .NET > 正文

MetaBuilders在ASP.NET FORUMS2.0中的应用方法

2024-07-10 12:57:38
字体:
来源:转载
供稿:网友
曾听到朋友报怨asp.net forums2.0中因为使用了metabuilders使得化码不太直观,呵,有利有有弊,使用这个控件目的
在于统一界面。

比方说在管理页面中一般都会分成左右两栏,在asp.net可能比较常用的方法有两种,一种是使用框架,还有一种是
使用一个表现左边的asxc来统一。
那么使用了metabuilders之后是一种什么情况呢?我觉得和使用了框架页面差不多,不过里面没有了分栏,
页面看起来是一个整体,页面变成了一个容器,包含了其他的一些分页,这种做法就要比使用asxc来统一页面
来说要便于管理。
在thems/adminmasterpage.ascx中
<table width="100%" cellspacing="7">
<tr>
<td valign="top" width="170">
<forums:adminnavigation runat="server" />
</td>
<td valign="top">
<mp:region id="admincontent" runat="server"><p>default main content</p></mp:region>
</td>
</tr>
</table>
在页面的右边他定义了id="admincontent"
也就是说在这个时候你并不知道你的左边是什么,这个ascx就是一个容器。
这应该是asp.net forums中一个比较普遍的调用机制,都是先直接调某一个内容,然后再查找反调上级容器
接着以admin/sitesettings.aspx为例
在超链接中都是直接调用这个文件,但这个文件却只是右边显示的内容,他通过
<mp:contentcontainer runat="server" id="mpcontainer" masterpagefile="~/themes/adminmasterpage.ascx">
去查找他的父容器。
通过
<mp:content id="admincontent" runat="server">
说明他将替换父容器中的那个组件。
顺便说一下今天接触的代码分离方法和以前又有所不同,以前是通过类去找皮肤,而这几个是没有皮肤的
都直接带有自己的cs文件,然后在components中有一个相应的实体类。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表