快速业务通道

ASP.NET控件开发基础(16)

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
plate = value; }
     }

(3)重写CreateChildControls方法

注意了,此处模板的InstantiateIn方法不再是this了,而是自定义容器控件了,再用数据绑定表达式访问的将是ProductItem的数据(即自定义容器控件的数据)

protected override void CreateChildControls()
     {
       _item = new ProductItem();
       _itemTemplate.InstantiateIn(_item);
       Controls.Add(_item);
     }

(4)页面代码

void Page_Load()
   {
     Product1.Name = "Laptop Computer";
     Product1.Price = 1254.12m;
     Product1.DataBind();
   }

   <custom:Product
     id="Product1"
     Runat="Server">
     <ItemTemplate>

     Name: <%# Eval("Name") %>
     <br />
     Price: <%# Eval("Price", "{0:c}") %>
     </ItemTemplate>
   </custom:Product>

上面以Eval来绑定数据,也可以用Container表达式,如下图,其类型为ProductItem

ASP.NET控件开发基础(16)

注意:当不是数据绑定控件时,则不能用Eval绑定语法,如上面的几个例子.大家可以测试一下.

好了本次该讲的我想也讲完了,以上代码多为asp.net2.0揭密的例子

本来上面代码完全可以在一个控件中实现的,但我把其分开来讨论,这样理解的更加深刻.上面都是模板控件基础.将为以后实现复杂效果打下基础.本次未涉及到数据绑定,下次我们继续讨论.希望对你有帮助,错误之处还请提出.

本文配套源码

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号