快速业务通道

ASP.NET自定义控件组件开发 第五章 模板控件开发

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-20
[TemplateContainer (typeof(TemplateLoginControl ))]//我们的模板是包含在找个控件中的, 25 [PersistenceMode (PersistenceMode.InnerProperty )]//模板中内容很复杂的,比如你可以拖入很多的控件 26 public ITemplate LoginUserNameTemplate 27 { 28 get 29 { 30 return loginUserNameTemplate; 31 } 32 set 33 { 34 loginUserNameTemplate = value; 35 } 36 37 } 38 39 private ITemplate loginUserPasswardTemplate; 40 [Browsable(false)]//我们不想在属性窗口中看见它 41 [TemplateContainer(typeof(TemplateLoginControl))]//我们的模板是包含在找个控件中的 , 42 [PersistenceMode(PersistenceMode.InnerProperty)]//模板中内容很复杂的,比如你可以拖入很多的控件 43 public ITemplate LoginUserPasswardTemplate 44 { 45 get 46 { 47 return loginUserPasswardTemplate; 48 } 49 set 50 { 51 loginUserPasswardTemplate = value; 52 } 53 } 54 #endregion 55 重写创建控件的方法#region 重写创建控件的方法 56 57 protected override void CreateChildControls() 58 { 59 Controls.Clear(); 60 if (loginUserNameTemplate != null) 61 loginUserNameTemplate.InstantiateIn(this); 62 else 63 base.CreateChildControls(); 64 if(loginUserPasswardTemplate!=null ) 65 loginUserPasswardTemplate .InstantiateIn(this); 66 else 67 base.CreateChildControls(); 68 69 ChildControlsCreated = true; 70 71 72 73 } 74 75 #endregion 76 77 78 79 } 80 81 public class MyLoginDesigner : CompositeControlDesigner 82 { 83 public override void Initialize(IComponent component) 84 { 85 base.Initialize(component); 86 SetViewFlags(ViewFlags.TemplateEditing, true); 87 } 88 89 public override string GetDesignTimeHtml() 90 { 91 TemplateLoginControl control = Component as TemplateLoginControl; 92 if (control != null) 93 { 94 if (control.LoginUserNameTemplate == null) 95 { 96 return CreatePlaceHolderDesignTimeHtml("请您编辑用户名的模板"); 97 98 } 99 100 if (control.LoginUserPasswardTemplate == null) 101 { 102 return CreatePlaceHolderDesignTimeHtml("请您编辑用户密码的模板"); 103 } 104 } 105 return base.GetDesignTimeHtml(); 106 } 107 108 private TemplateGroupCollection tempgc; 109 public override TemplateGroupCollection TemplateGroups 110 { 111 get 112 { 113 if (tempgc == null) 114 { 115 116 te

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号