using Gs.DevApp.Entity; using Gs.DevApp.ToolBox; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Data; using System.Threading.Tasks; using System.Windows.Forms; namespace Gs.DevApp.UserControl { public partial class SelectCheckDt : DevExpress.XtraEditors.XtraForm { private List _filterList = new List(); private readonly string _webServiceName = "MesQmCheckitemManager/"; private string _jyxm = ""; /// /// /// /// 当为:jyxm时,统计检验项目的配置次数 public SelectCheckDt(string inJyxm) { InitializeComponent(); _jyxm = inJyxm; getPageList(1); pageBar1.PagerEvent += PageBar1_PagerEvent; Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameter(gridView1); btnIn.Click += (s, e) => { var list = new List(); int[] rows = this.gridView1.GetSelectedRows();//先获取选择行的行号 DataTable dt = this.gcMain.DataSource as DataTable;//得到GridControl的数据源 foreach (int idx in rows) { list.Add(new { guid = dt.Rows[idx]["guid"].ToString(), fSubsidiary = dt.Rows[idx]["fSubsidiary"].ToString(), id = dt.Rows[idx]["id"].ToString(), itemNo = dt.Rows[idx]["itemNo"].ToString(), itemName = dt.Rows[idx]["itemName"].ToString(), itemModel = dt.Rows[idx]["itemModel"].ToString(), }); } UpdateParent?.Invoke(this, new UpdateParentEventArgs { DynamicList = list }); Close(); }; } private void GridView1_ColumnFilterChanged(object sender, EventArgs e) { _filterList = Gs.DevApp.ToolBox.UtilityHelper.GetDilter(gridView1.Columns, gridView1); Task.Delay(100); getPageList(1); } /// /// 回调事件 /// public event EventHandler UpdateParent; /// /// 分页事件 /// /// /// private void PageBar1_PagerEvent(int curPage, int pageSize) { getPageList(curPage); } /// /// /// 第几页 /// 每页几条 private void getPageList(int curPage) { var _sbSqlWhere = UtilityHelper.GetSearchWhere(_filterList); var pgq = new PageQueryModel(curPage, this.pageBar1.RowsCount, "item_no", "asc", "", _sbSqlWhere.ToString(), _jyxm); var json = JsonConvert.SerializeObject(pgq); try { var strReturn = UtilityHelper.HttpPost("", "MesItemsManager/GetListSelect", json); var dd = UtilityHelper.ReturnToTablePage(strReturn); if (dd.rtnCode > 0) { DataTable dt = dd.rtnData.list; gcMain.BindingContext = new BindingContext(); gridView1.ColumnFilterChanged -= GridView1_ColumnFilterChanged; if (dt.Rows.Count > 0) { gcMain.DataSource = dt; gcMain.ForceInitialize(); gridView1.BestFitColumns(); Gs.DevApp.ToolBox.UtilityHelper.SetGridLayout(gridView1); } else UtilityHelper.SetDefaultTable(gcMain, gridView1); gridView1.ColumnFilterChanged += GridView1_ColumnFilterChanged; pageBar1.TotalPages = dd.rtnData.pages;//总页 pageBar1.CurrentPage = curPage;//当前页 pageBar1.RecordCount = dd.rtnData.total;//总记录数 } else { ToolBox.MsgHelper.ShowError("提示:" + dd.rtnMsg); } } catch (Exception ex) { MsgHelper.Warning("提示:" + ex.Message); } } } }