我在ASP.NET 3.5中工作,我正在尝试在网格中显示数据。我有一个模型类,数据存储为强类型列表。我有一个Repeater控件来显示所有数据,但由于理由不在网格中工作
public class RolesModel
{
public RolesModel() { }
public long RoleID { get; set; }
public string Title { get; set; }
public string Description { get; set; }
public DateTime CreatedDate { get; set; }
}
protected void Page_Load(object sender, EventArgs e)
{
if(!Page.IsPostBack)
{
List<RolesModel> roleList = new List<RolesModel>();
roleList = RoleDefinationRelay.GetAllRoles(null);
rptRoles.DataSource = roleList;
rptRoles.DataBind();
}
}
<asp:Repeater ID="rptRoles" runat="server">
<HeaderTemplate>
<table class="tableStyle1">
<tr>
<td>Role ID</td>
<td>Title</td>
<td>Description</td>
<td>Created Date</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><%#Eval("RoleID")%></td>
<td><%#Eval("Title")%></td>
<td><%#Eval("Description")%></td>
<td><%#Eval("CreatedDate")%></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
<cc0:Grid ID="ItemList" runat="server" FolderStyle="~/Styles/Grid" AutoGenerateColumns="true"
Width="100%" PageSizeOptions="5,10,20,50,100,-1" AllowFiltering="true" FilterType="ProgrammaticOnly"
AllowAddingRecords="false" DataSourceID="rptRoles">
<Columns>
<cc0:Column DataField="RoleID" HeaderText="Role ID" Visible="true" />
<cc0:Column DataField="Title" HeaderText="Title" Width="150" />
<cc0:Column DataField="Description" HeaderText="Description" />
<cc0:Column DataField="CreatedDate" HeaderText="Created Date" Width="150" />
</Columns>
</cc0:Grid>
答案 0 :(得分:0)
在您的代码隐藏中尝试此操作;
protected void Page_Load(object sender, EventArgs e)
{
if(!Page.IsPostBack)
{
List<RolesModel> roleList = new List<RolesModel>();
roleList = RoleDefinationRelay.GetAllRoles(null);
ItemList.DataSource = roleList;
ItemList.DataBind();
}
}
从网格标记中删除DataSourceID。