using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.Qcm.model; using CoreFS.CA06; using System; using System.Collections.Generic; using System.Data; using System.Linq; namespace Core.StlMes.Client.Qcm { public partial class FrmStandardChoice : FrmBase { private string _stdCodes = ""; public string StdCodes { get { return _stdCodes; } set { _stdCodes = value; } } private string _stdNames = ""; public string StdNames { get { return _stdNames; } set { _stdNames = value; } } public FrmStandardChoice(string stdCodes, OpeBase ob) { InitializeComponent(); this.ob = ob; _stdCodes = stdCodes; EntityHelper.ShowGridCaption(ultraGrid1.DisplayLayout.Bands[0]); Query(); } private void Query() { List data = EntityHelper.GetData( "com.steering.pss.qcm.CoreStandardChoice.QueryStandard", new object[] { }, ob); ultraGrid1.BeginUpdate(); string[] stdCodes = _stdCodes.Split(';'); foreach (var stdEntity in data) { if (stdCodes.Contains(stdEntity.StdCode)) { stdEntity.Chk = true; } } var sortData = data.OrderByDescending(a => a.Chk).ThenBy(a => a.StdName); comBaseStdEntityBindingSource.DataSource = sortData; ultraGrid1.EndUpdate(); ultraGrid1.UpdateData(); } private void button1_Click(object sender, EventArgs e) { ultraGrid1.UpdateData(); var rows = ultraGrid1.Rows.Where(a => a.GetValue("Chk") == "True").ToList(); _stdCodes = ""; _stdNames = ""; foreach (var row in rows) { if (_stdCodes == "") { _stdCodes = row.GetValue("StdCode"); _stdNames = row.GetValue("StdName"); } else { _stdCodes += ";" + row.GetValue("StdCode"); _stdNames += ";" + row.GetValue("StdName"); } } this.DialogResult = System.Windows.Forms.DialogResult.OK; } private void ultraGrid1_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e) { ultraGrid1.UpdateData(); } } }