首先请看代码纯粹的页面代码: <asp:ListView runat="server" ID="ListView1" DataSourceID="SqlDataSource1"> <LayoutTemplate><table runat="server" id="table1" runat="server" > <tr runat="server" id="itemPlaceholder" ></tr></table></LayoutTemplate> <ItemTemplate> <tr runat="server"> <td id="Td1" runat="server"> <asp:Label ID="NameLabel" runat="server" Text='<%#Eval("USERNAME") %>' /> </td><td id="Td2" runat="server"> <asp:Label ID="Label1" runat="server" Text='<%#Eval("USER_ID") %>' /> </td> </tr> </ItemTemplate> </asp:ListView> <asp:DataPager runat="server" ID="DataPager" PageSize="8" PagedControlID="ListView1"> <Fields > <asp:NumericPagerField ButtonCount="5" PreviousPageText="<--" NextPageText="-->" /> </Fields> </asp:DataPager> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="Data Source=TEST\YK;Initial Catalog=gisqflow;Persist Security Info=True;User ID=gisqflow;Password=gisqflow" ProviderName="System.Data.SqlClient" SelectCommand="SELECT [USER_ID], [USERNAME], [PASS_WORD], [STAFF_ID], [STAFF_NAME] FROM [BT_USER]"> </asp:SqlDataSource> 说明: LayoutTemplate标识定义控件的主要布局的根模板。它包含一个占位符对象,例如表行 (tr)、div 或 span 元素。此元素将由 ItemTemplate 模板或 GroupTemplate 模板中定义的内容替换。它还可能包含一个 DataPager 对象。 占位符对象(也就是上面代码中的id="itemPlaceholder" 是必不可少的) DataPager是分页用的它也可以写在LayoutTemplate也可以单独使用,不过据我测试,在其放在LayoutTemplate里面的时候Pagesize(控制ListView每页显示行数)不起作用,只有其在单独使用时才有作用ButtonCount="5"是设置其显示分页按钮的个数。而ListView的ItemTemplate中支持html属性和布局也就是说其数据排放的方式是可以根据html标记来设置的。 |