请教:如何使用自定义控件
一个有界面的自定义的控件,以ascx结尾的控件直接拖到界面上就行了,可是一些没有界面的控件呢?怎么使用?
我讲的没有界面的控件可能一些朋友不明我的意思,实际上就是一个类即一个cs文件,比如在petshop中就定义了几个这样的控件,如Header.cs,SimplePager.cs
这些控件好象不能直接拖到界面上。
但Header.cs,SimplePager.cs在petshop中的使用方法又不同,
使用Header.cs时 加上下面的代码就行:
<%@ Register TagPrefix="Controls" Namespace="PetShop.Web.Controls" Assembly="PetShop.Web" %>
<controls:header id="header" runat="server" hidecategorymenu="true" />
这样都好说,可使用SimplePager.cs则麻烦了,使用下面的代码:
<%@ Register TagPrefix="controls" Namespace="PetShop.Web.Controls" Assembly="PetShop.Web" %>
<controls:SimplePager id="products" runat="server" pagesize="4" emptytext="No products found." onpageindexchanged="PageChanged"/>
控件将不能正常工作,不能正常显示数据,
在petshop中 人家是这么用的:
<controls:SimplePager id="products" runat="server" pagesize="4" emptytext="No products found." onpageindexchanged="PageChanged">
<HeaderTemplate>
<TABLE cellSpacing="0" cellPadding="0">
<TBODY>
<TR class="gridHead">
<TD>Product ID</TD>
<TD>Name</TD>
</TR>
</HeaderTemplate>
<ITEMTEMPLATE>
<TR class="gridItem">
<TD><%# DataBinder.Eval(Container.DataItem, "Id") %></TD>
<TD><A href='Items.aspx?productId=<%# DataBinder.Eval( Container.DataItem, "Id") %>'><%# DataBinder.Eval(Container.DataItem, "Name") %></A></TD>
</TR>
</ITEMTEMPLATE>
<FOOTERTEMPLATE></TBODY></TABLE></FOOTERTEMPLATE>
</controls:SimplePager></P>
这么长的代码,实在麻烦,都是手工输入的吗?
请这方面有经验或了解petshop的朋友回答,谢谢