自定义控件最基本的应用之一就是创建一个控件,在其中只简单地显示一组位于其它页面上的其它控件。例如,可能在一系列asp.net页面中,你总是用相同的页脚,就像蓝色理想下方的导航。或者,也可能你在整个站点中使用一个相同的导航条。你可以在每个这样的页面上都编写同样的代码,但是你也可以用这样的方法来代替:你可以将这个页脚或导航条封装到一个用户自定义控件中。然后,在每一个需要这一项的页面上,只需定义一个你自己的这个自定义控件即可。当然,你也可以使用#include file包含它,但是.net的自定义控件却提供了更强大的功能。
下面的这个实例将显示一个登录窗口,它可以调用在任意你想显示的页面中:
<table style=”font:10pt verdana;border-width:1;border-style:solid;border-color:black;” cellspacing=”15”>
<tr>
<td>
<asp:label
id=”lbl1”
runat=”server”
font-bold=”true”
text=”username”
/>
</td>
<td>
<asp:textbox
id=”txtusername”
runat=”server”
/>
</td>
</tr>
<tr>
<td>
<asp:label
id=”lbl2”
runat=”server”
font-bold=”true”
text=”password:”
/>
</td>
</tr>
<tr>
<td>
<asp:textbox
id=”txtpassword”
runat=”server”
textmode=”password”
/>
</td>
</tr>
</table>
这些控件并不是定义在一个asp.net页面的表单上的。这是因为保存为一个用户自定义控件的这个文件将会把它自身的内容放在其他asp.net页面的表单中。换句话说,当你在asp.net页面中定义一个这样的控件时,就像是你将上面的代码插入到这个asp.net页面上表单内的相应点。
在定义这个控件之后,就可以在asp.net页面上注册这个控件了:
<%@register
tagprefix=”my”
tagname=”logincontrol”
src=”usercontrols.ascx”
%>
然后就开始定义了:
<my:logincontrol
id=”msc1”
runat=”server” />
出处:
责任编辑:幻想曲
上一页 在ASP.NET中创建自定义控件初步 下一页 在用户自定义控件中创建只读属性
◎进入论坛网络编程版块参加讨论
|