关于Repeater控件在后台代码中动态创建列以及绑定数据的问题
|
admin
2017年11月17日 0:3
本文热度 10325
|
1 2 3 4 5 6 7 8 9 10 11 12 | <asp:Repeater ID="rptTest" runat="server">
<HeaderTemplate>
<table>
<tr><th>列名1</th><th>列名2</th><th>列名3</th></tr>
</HeaderTemplate>
<ItemTemplate>
<tr><td><%#Eval("DataMember1")%></td><td><%#Eval("DataMember1")%></td><td><%#Eval("DataMember1")%></td></tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
|
上面是一个在前台使用Repeater控件的示例,现在我想做的是做一个判断,比如:传入一个状态值,假如状态值是1的时候,这个repeater只显示列名1和列名2;当状态值是2的时候,只显示列名2和列名3。这样的效果。 我的想法是在前台只放一个<asp:Repeater ID="rptTest" runat="server"></asp:Repeater>控件,在窗体加载的时候,根据页面传入的状态值动态生成模板。
该文章在 2017/11/17 0:03:11 编辑过
| |
全部评论5 |
|
admin
2017年11月17日 0:3
看了MSDN上的解释,Repeater的模板类型都是ITemplate接口,这个ITemplate接口只有一个方法“voidInstantiateIn(Controlcontainer);”,这个方法没看明白。也没有找到这个接口的实现类。不知道用后台代码如何实现动态绑定列,以及绑定对应数据的代码。如果有其它的控件可以实现这个效果也会采纳。
该评论在 2017/11/17 0:03:40 编辑过
|
|
admin
2017年11月17日 0:4
参考这个:http://www.cnblogs.com/insus/archive/2013/03/22/2975824.html
该评论在 2017/11/17 0:04:24 编辑过
|
|
admin
2017年11月17日 0:4
或者:http://www.cnblogs.com/insus/p/4058924.html
该评论在 2017/11/17 0:04:40 编辑过
|
|
admin
2017年11月17日 0:5
用下面的方法实现,会不会简单点?根据传值调用不同的sql要显示1,2,3为空白的,执行selectcol1,col2,''这里是空白的哦,只是占位符''fromtable要显示2,3,1为空白的,执行select''这里是空白的哦,只是占位符'',col2,col3fromtable然后再绑定到你的repeater
该评论在 2017/11/17 0:05:05 编辑过
|
|
admin
2017年11月17日 0:5
如果上面均不理想,这个也行:http://www.cnblogs.com/insus/p/4167215.html
该评论在 2017/11/17 0:05:38 编辑过
|