代码之家  ›  专栏  ›  技术社区  ›  Johan

在中继器上创建可由用户覆盖的默认模板

  •  0
  • Johan  · 技术社区  · 15 年前

    <my:Repeater>
      <HeaderTemplate>
        My Default Header
      </HeaderTemplate>
      <ItemTemplate>
        My data
      </ItemTemplate>
      <FooterTemplate>
        My Default Footer
      </FooterTemplate>
    </my:Repeater>
    

    我希望此模板位于用户无法写入的文件中。如果用户只是

    <my:Repeater/>
    

    然后它应该使用我的默认模板。但是,用户可以覆盖一个或多个 <HeaderTemplate> , <ItemTemplate> <FooterTemplate> .

    这可能吗?我怎样才能做到?

    1 回复  |  直到 15 年前
        1
  •  0
  •   Brian Mains    15 年前

    每个模板都是一个ITemplate;通过实现ITemplate并向父容器中添加控件,可以通过代码编程创建模板。在OnInit方法中,您可以设置默认模板,如果用户提供ItemTemplate,理论上,它应该覆盖您的模板。