我正在尝试将 a 转换GridView
为 aListView
以允许我更好地控制表格显示。
GridView
此处定义的工作正常并正确显示数据。
<asp:GridView ID="gvService" runat="server"
AllowPaging="True"
AutoGenerateColumns="False"
DataKeyNames="ID"
DataSourceID="objService">
<Columns>
<asp:BoundField DataField="ID" HeaderText="ID" />
<asp:BoundField DataField="Name" HeaderText="Name" />
<asp:BoundField DataField="ServiceType" HeaderText="Type" />
</Columns>
</asp:GridView>
当我将其转换为 aListView
时,根本不会向页面呈现 HTML。我什至把它们并排放置,GridView
作品但ListView
不显示。
<asp:ListView ID="lvService" runat="server"
DataSourceID="objService">
<LayoutTemplate>
<table>
<tr>
<th>ID</th>
<th>Name</th>
<th>Type</th>
</tr>
<tr id="itemPlaceholder" runat="server"></tr>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr>
<td><%# Eval("ID") %></td>
<td><%# Eval("Name") %></td>
<td><%# Eval("ServiceType") %></td>
</tr>
</ItemTemplate>
<AlternatingItemTemplate>
<tr>
<td><%# Eval("ID") %></td>
<td><%# Eval("Name") %></td>
<td><%# Eval("ServiceType") %></td>
</tr>
</AlternatingItemTemplate>
</asp:ListView>
这里是ObjectDataSource
<asp:ObjectDataSource ID="objService" runat="server"
EnablePaging="true"
TypeName="My.Data.DataSource.ServiceDataSource" DataObjectTypeName="My.Data.Service.ServiceSearch"
SelectMethod="Search"
SelectCountMethod="SearchCount">
<SelectParameters>
<asp:ControlParameter ControlID="tbSearch" Name="Search" PropertyName="Text" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
我觉得我在这里缺少一些基本的东西。GridView
关于为什么填充但ListView
没有填充的任何想法?
我是否需要在后面的代码中手动DataBind()控件?