使用三层架构,我有一个对象列表
List<object> careerList = new List<object>();
ModuleDTO module = new ModuleDTO();
careerList = module.getDegreeCodeByQualification(qualificationCode);
然后我将其添加到gridview中:
gridViewMaster.DataSource = careerList;
gridViewMaster.DataBind();
然后我想做的是在gridview上启用分页。到目前为止,我的网格视图是:
<asp:GridView ID="gridViewMaster" runat="server"
AutoGenerateColumns="False" GridLines="None"
BorderWidth="1px" CellPadding="2" DataKeyNames="Grouping"
ForeColor="Black"
onrowdatabound="gridViewMaster_RowDataBound" CssClass="mGrid" PagerStyle-CssClass="pgr"
AlternatingRowStyle-CssClass="alt" OnPageIndexChanging="gridView_PageIndexChanging"
AllowPaging="True" >
是否可以在列表上启用分页而无需将该列表更改为Datatable或Dataview?如果有办法,这将有很大帮助。
到目前为止,我的活动如下:
protected void gridView_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
gridViewMaster.PageIndex = e.NewPageIndex;
List<object> careerList = new List<object>();
ModuleDTO module = new ModuleDTO();
careerList = module.getDegreeCodeByQualification(qualificationCode);
ModalProgress.Show();
System.Threading.Thread.Sleep(1000);
JobPanel.Visible = true;
gridViewMaster.DataSource = careerList.Distinct();
gridViewMaster.DataBind();
}
有人请帮助我!!!谢谢
答案 0 :(得分:0)
我的代码工作正常,使用List数据绑定的GridView分页。如果您在尝试以下检查后遇到任何其他问题,请给我留言:
确保此代码返回带有名为“Grouping”属性的项目列表,因为您在GridView中将其列为DataKeyName,如下所示:
careerList = module.getDegreeCodeByQualification(qualificationCode);
我的GridView代码如下所示:
<asp:GridView ID="GridView1" runat="server" GridLines="None" BorderWidth="1px" CellPadding="2" DataKeyNames="Grouping"
ForeColor="Black" AllowPaging="True"
onpageindexchanging="GridView1_PageIndexChanging" AutoGenerateColumns="true" PageSize="2">
</asp:GridView>
...请注意我添加的新“PageSize”和“AutoGenerateColumns”属性。
希望有所帮助。
答案 1 :(得分:0)
我修好了!感觉像个白痴,但我对错误的gridview有约束力,但你的答案完美无缺!非常感谢你。
对于遇到同样问题的其他人来说,这就是我所做的:
<asp:GridView ID="GridQualifications" runat="server"
CssClass="mGrid" PagerStyle-CssClass="pgr"
AlternatingRowStyle-CssClass="alt" AutoGenerateColumns="false"
onselectedindexchanged="GridQualifications_SelectedIndexChanged"
AllowPaging="True" PageSize="2" OnPageIndexChanging="gridView_PageIndexChanging">
<AlternatingRowStyle CssClass="alt" />
protected void gridView_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridQualifications.PageIndex = e.NewPageIndex;
BindData();
}
我使用List作为我的数据源,以任何人应该的方式绑定我的数据。
非常感谢您放松的所有压力:D:D