FineUI 官方论坛

标题: 分页数据点击下一页显示数据无变化 [打印本页]

作者: xiaowengang    时间: 2017-5-13 19:55
标题: 分页数据点击下一页显示数据无变化
我做了个分页的Grid,是动态绑定Datatable的,我点击上一页下一页的翻页按钮时,页数变了,但是显示的数据无变化;请指点下

作者: zy32002    时间: 2017-5-14 08:32
从新绑定的下就可以了
作者: xiaowengang    时间: 2017-5-14 10:17
下面是我绑定数据的
        private void BindGrid(FineUIMvc.Grid Grid1,string LH)
        {
            int iPageIndex = Grid1.PageIndex + 1;
            int iPageSize = Grid1.PageSize;
            string WhereStr = "1=1";

            string[] aryKey = new string[4];
            aryKey[0] = LH;  // txtLH.Text;

            DataTable dt = QueryCommon.GetQueryResult("WSP_ERPITEM_LIST", "list", iPageIndex, iPageSize, WhereStr, aryKey);
            //表记录
            //Grid1.RecordCount = Convert.ToInt32(QueryCommon.GetQueryResult("WSP_ERPITEM_LIST", "count", 1, 99999, WhereStr, aryKey).Rows[0][0]);
            ViewBag.Grid1RecordCount = Convert.ToInt32(QueryCommon.GetQueryResult("WSP_ERPITEM_LIST", "count", 1, 99999, WhereStr, aryKey).Rows[0][0]);
            //表内容
            //Grid1.DataSource = dt;
            ViewBag.Data = null;
            ViewBag.Grid1DataSource = dt;

            Grid1.DataBind();
        }
在加载时调用,在翻页时会调用
        [HttpPost]
        [ValidateAntiForgeryToken]
        public ActionResult Grid1_PageIndexChanged(FineUIMvc.Grid Grid1, string Grid1_pageIndex)
        {
            Grid1.PageIndex = Convert.ToInt32(Grid1_pageIndex);
            BindGrid(Grid1, string.Empty);

            return UIHelper.Result();
        }
我断点看了,在ViewBag.Grid1DataSource = dt;时数据是正确的,但是接下来的显示就不多了
作者: kingdawn2015    时间: 2017-5-14 17:18
xiaowengang 发表于 2017-5-14 10:17
下面是我绑定数据的
        private void BindGrid(FineUIMvc.Grid Grid1,string LH)
        {

你调用的ActionResult Grid1_PageIndexChanged(FineUIMvc.Grid Grid1, string Grid1_pageIndex)中,没有使用 Grid1_pageIndex定位到新的页面数据啊,当然不起作用了!
作者: xiaowengang    时间: 2017-5-15 09:50
你是说Grid1.PageIndex = Convert.ToInt32(Grid1_pageIndex);改成Grid1.PageIndex = Convert.ToInt32(Grid1_pageIndex)+1;
作者: kingdawn2015    时间: 2017-5-15 20:19
xiaowengang 发表于 2017-5-15 09:50
你是说Grid1.PageIndex = Convert.ToInt32(Grid1_pageIndex);改成Grid1.PageIndex = Convert.ToInt32(Grid1 ...

抱歉,原来没仔细看。你可以参照一下AppBoxMvc,采取类似下面的形式重新绑定数据试试:
            var grid1UI = UIHelper.Grid("Grid1");
            var pagingInfo = new PagingInfoViewModel
            {
                SortField = Grid1_sortField,
                SortDirection = Grid1_sortDirection,
                PageIndex = Grid1_pageIndex,
                PageSize = ddlGridPageSize
            };
            grid1UI.DataSource(Power_GetData(pagingInfo, ttbSearchMessage), Grid1_fields);
            grid1UI.RecordCount(pagingInfo.RecordCount);

            return UIHelper.Result();






欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/) Powered by Discuz! X3.4