首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.Net ITemplate -声明的方式

ASP.Net ITemplate -声明的方式
EN

Stack Overflow用户
提问于 2010-04-10 04:18:09
回答 1查看 1.7K关注 0票数 4

当我们想要在用户控件中定义一个模板时,我们在用户控件中声明一个如下所示的字段

代码语言:javascript
复制
public ITemplate MyTemplate { get; set; }

这样,用户定义的模板内容将以MyTemplate表示,您可以使用它。

还有一些方法可以自定义模板,例如

代码语言:javascript
复制
[TemplateInstanceAttribute(TemplateInstance.Single)]
public ITemplate MyTemplate { get; set; }

上面的示例将启用定义单实例模板(http://www.nikhilk.net/SingleInstanceTemplates.aspx)。

我无意中遇到了单实例模板,并被它的强大功能所震撼。

我的问题是,使用ITemplates可以实现哪些功能?我们如何定义(使用)它们(更具体地说是通过注释)。有没有好的ITemplates文档??(请不要指向msdn)

EN

回答 1

Stack Overflow用户

发布于 2012-02-28 18:27:46

看起来您确实正确地声明了模板。要使用您自己的模板实际填充内容,需要在标记中声明它。例如:

代码语言:javascript
复制
<MyControl runat="server" ...>
  <MyTemplate>
   ... any standard ASP.NET controls in here
   <asp:Label runat="server" ID="lblName"/>
  </MyTemplate>
</MyControl>

  public void InstantiateIn(Control container) {
      var lblName = container.FindControl("lblName") as Label;
      lblName.Text = "Blah";// set from your data layer or otherwise
      Button b = new Button();
      b.ID = "B";
      container.Controls.Add(b);
  }

这是你要找的东西吗?

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2610625

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档