我有一个asp:FormView与一个ItemTemplate。我想在FormView中设计一些div元素的内容:
<asp:FormView ID="MyFormView" runat="server" > <ItemTemplate> <div class="block1"> Stuff... </div> <div class="block2"> Stuff... </div> ... <div class="blockN"> Stuff... </div> </ItemTemplate> </asp:FormView>
当我运行应用程序时,将创建以下HTML:
<table id="MyFormView" style="border-collapse: collapse;" border="0" cellspacing="0"> <tbody> <tr> <td colspan="2"> <div class="block1"> Stuff... </div> <div class="block2"> Stuff... </div> ... <div class="blockN"> Stuff... </div> </td> </tr> </tbody> </table>
其实桌子有点令人不安。我不知道有什么目的是让ItemTemplate自由选择内容,然后将其包装到表中。
解决方法
使用中继器(它是轻型版本,完全可定制)
<asp:Repeater runat=server ID="r1"> <HeaderTemplate><div></HeaderTemplate> <ItemTemplate>Zzz</ItemTemplate> <FooterTemplate></div></FooterTemplate> </asp:Repeater>
要么
更好的使用控制adapters: