如<my:RepeaterDefine id="rptList" runat="server">
  <ItemTemplater>
    <FieldTemplater field="id">
      <%# Eval("ID") %>
    </FieldTemplater>
    <FieldTemplater field="name">
      <%# Eval("Name") %>
    </FieldTemplater>
    <FieldTemplater field="gender">
      <%# Eval("Gender") %>
    </FieldTemplater>
  </ItemTemplater>
</my:RepaterDefine>他比Repeater多出一个参数FieldSource
如上绑定如下数据
ID  Name  Gender
1   Jerry M
2   Lene  F
3   King  M
当传入的FieldSource为"name,id,gender"的时候绑定成
Jerry 1  M
Lene  2  F
King  3  M
当传入的FieldSource为"gender,name,id"的时候绑定成
M Jerry 1
F Lene  2
M King  3
-------------------------
也就是多出"FieldSource"属性来定义他们的前后顺序那这样的功能,如何如何开发这个控件呢?
麻烦大家给出设计思想谢谢

解决方案 »

  1.   

    只有自己写个控件继承Repeater了
      

  2.   

    你想任意组合列的顺序是吧?那就不要在前台html页面写出每个列了,试下在后台动态生成吧,不仅能控制顺序,还能控制某些列是否显示,在cs代码中根据条件控制,很自由的。
    网上有很多动态生成gridview列的源码例子,你试着改成repeater看看
      

  3.   

    直接用 td或div 去控制不是更方便吗? 而且可以控制样式 方便美工制作。
      

  4.   

    <FieldTemplater field="id">
          <%# Eval("ID") %>
        </FieldTemplater>
        <FieldTemplater field="name">
          <%# Eval("Name") %>
        </FieldTemplater>
        <FieldTemplater field="gender">
          <%# Eval("Gender") %>
        </FieldTemplater>与 FieldSource 
    你希望如何共存,就是同时设置这两个的时候 你希望控件有什么样的展现形式