private void InitGrid() { //加载视图数据 GridParma thisGridParma = null; //IEnumerable<GridParma> thisGridParmaList; thisGridParma = GridParmaList.FirstOrDefault(p => p.PageName == this.Request.Url.AbsolutePath && p.GridName == "ViewControlYF"); if (thisGridParma == null) { thisGridParma = new GridParma() { PageName = this.Request.Url.AbsolutePath, GridName = "ViewControlYF", QueryParmaList = new List <QueryParma>(), }; GridParmaList.Add(thisGridParma); } QueryParma ViewControlYFQueryParma = thisGridParma.QueryParmaList.FirstOrDefault(p => p.QueryField.FieldName == "User_ID"); if (ViewControlYFQueryParma == null) { ViewControlYFQueryParma = new QueryParma() { QueryField = new QueryField() { FieldName = "User_ID", }, CompareTypeEnum = CompareTypeEnum.Equal, Value = __Id, }; thisGridParma.QueryParmaList.Add(ViewControlYFQueryParma); } thisGridParma.PageIndex = 0; ViewControlYFQueryParma.Value = __Id; ViewControlYF.InitData(); }
/// <summary> /// 查询绑定数据 /// </summary> public void LoadData() { //初始化时直接调用此方法,附上此值 if (thisGridParma.PageIndex != 0) { ViewControlYF.PagerSettings.PageIndex = thisGridParma.PageIndex; } thisGridParma.PageSize = ViewControlYF.PagerSettings.PageSize; var _UserDetail_View_ViewControlYF = (this.Page as BasePage).ViewQueryHelper.GetViewControlQuery("UserDetail_View_ViewControlYF"); _UserDetail_View_ViewControlYF.PageSize = thisGridParma.PageSize; _UserDetail_View_ViewControlYF.PageIndex = thisGridParma.PageIndex; if (!string.IsNullOrEmpty(thisGridParma.SortFieldName)) { _UserDetail_View_ViewControlYF.OrderTableAlias = thisGridParma.SortFieldName.Split('$')[0]; _UserDetail_View_ViewControlYF.OrderFieldName = thisGridParma.SortFieldName.Split('$')[1]; _UserDetail_View_ViewControlYF.OrderMethod = thisGridParma.SortDirection == "asc"?Drision.Framework.LiteQueryDef.Internal.OrderMethod.ASC:Drision.Framework.LiteQueryDef.Internal.OrderMethod.DESC; } //赋条件,如果有条件或者是作为树形两种页面有树作为条件的,都要先定义 //2013-11-6 V3.0 修改 (this.Page as BasePage).SetQueryCondition_FromGridParmaToViewQuery(_UserDetail_View_ViewControlYF, thisGridParma); //如果有树作为条件的,也要把树条件加进来 var _dataCount = 0; var result = QueryData(_UserDetail_View_ViewControlYF, ref _dataCount); ViewControlYF.PagerSettings.DataCount = _dataCount; //如果当前页无数据,则跳到上一页重查,直到有数据或跳到了第一页就没办法了 while (result.Rows.Count == 0 && thisGridParma.PageIndex > 0) { thisGridParma.PageIndex--; _UserDetail_View_ViewControlYF.PageIndex--; _UserDetail_View_ViewControlYF.PageIndex--; result = QueryData(_UserDetail_View_ViewControlYF, ref _dataCount); } ViewControlYF.DataSource = result; //以下为列统计 //添加格式化字符串 ViewControlYF.SetFormatString("a$Role_Name", _UserDetail_View_ViewControlYF.ViewFieldFormatDict["a$Role_Name"]); ViewControlYF.SetFormatString("a$Role_Comment", _UserDetail_View_ViewControlYF.ViewFieldFormatDict["a$Role_Comment"]); ViewControlYF.DataBind(); }