c# asp.net,添加自定义控件
Posted
技术标签:
【中文标题】c# asp.net,添加自定义控件【英文标题】:c# asp.net , add custom control 【发布时间】:2011-03-23 12:36:48 【问题描述】:我在 asp.net webforms (c#) 中创建了一个名为“Article”的用户控件,其中包含文章的一般布局,并具有一个名为 datasource 的公共属性。数据源将由亚音速 (DAL) 活动记录填充。在控件预渲染事件中,它将读取记录并填充标签。我认为这是一个易于维护的灵活解决方案。
然而,我的问题是,当我尝试将控件添加到占位符时,我的所有控件(如标签、文字等)都会收到空引用异常。
我正在尝试按如下方式生成控件:
foreach (DAL.Article item in coll)
p7.Controls.General.Article.Article article = new p7.Controls.General.Article.Article();
article.datasource = item;
phContent.Controls.Add(article);
有什么我完全错过的吗?快把我逼疯了嘿嘿!另一个问题是你们知道这种方法是否会对性能产生很大影响。我每页只添加 10 个这些文章控件。
感谢您的宝贵时间!
亲切的问候, 标记
【问题讨论】:
【参考方案1】:您没有实例化用户控件。您需要使用LoadControl 方法。
像这样:
ArticleUserControl myControl = (ArticleUserControl)LoadControl("~/PathToUc/MyControl.ascx");
myControl.datasource = item;
phControl.Controls.Add(myControl);
【讨论】:
以上是关于c# asp.net,添加自定义控件的主要内容,如果未能解决你的问题,请参考以下文章
向 asp.NET RadioButton 控件添加自定义属性