using CoreFS.CA06; using Infragistics.Win.UltraWinEditors; using Infragistics.Win.UltraWinGrid; using System; using System.Data; using System.Windows.Forms; namespace Core.StlMes.Client.Qcm { public partial class CtrlMscTolerances : UserControl { public FrmTolerancesStandard _frmTolerancesStd; private bool isLoaded = false; private string _customInfo; public event BeforeRowInsertEventHandler BeforeRowInsert; public OpeBase Ob { get { return _frmTolerancesStd.ob; } set { _frmTolerancesStd.ob = value; } } public UltraGrid Grid { get { return _frmTolerancesStd.UltraGrid1; } } public DataTable TolerancesDataTable1 { get { return _frmTolerancesStd.DataTable1; } } public DataTable TolerancesDataTable2 { get { return _frmTolerancesStd.DataTable2; } } public bool IsQueryValidData { get { return _frmTolerancesStd.ChkValid.Checked; } set { _frmTolerancesStd.ChkValid.Checked = value; } } public CtrlMscTolerances(System.Windows.Forms.Control container) { InitializeComponent(); this.Dock = DockStyle.Fill; _frmTolerancesStd = new FrmTolerancesStandard(); _frmTolerancesStd.UltraGrid1.BeforeRowInsert += new Infragistics.Win.UltraWinGrid.BeforeRowInsertEventHandler(UltraGrid1_BeforeRowInsert); _frmTolerancesStd.UltraGrid1.AfterRowInsert += new Infragistics.Win.UltraWinGrid.RowEventHandler(UltraGrid1_AfterRowInsert); this.Controls.Add(_frmTolerancesStd.UltraGrid1); container.Controls.Add(this); this.BringToFront(); } public void ShowGrid(string msc, OpeBase ob) { if (isLoaded == false) { _frmTolerancesStd.Msc = msc; _frmTolerancesStd.PopupLoad("1", ob); _customInfo = "1"; isLoaded = true; } else { if (_frmTolerancesStd.Msc != "" && _frmTolerancesStd.Msc != msc) { _frmTolerancesStd.Msc = msc; //this.RefreshData(); _frmTolerancesStd.PopupRefresh(); } } } /// /// 显示以标准为查询条件的内控标准 /// public void ShowStdGrid(string stdCode, string produccodeNk, string steelcodeNk, string processCode, OpeBase ob) { if (isLoaded == false) { //_frmChemStd = new FrmChemStandard(); //_frmChemStd.Msc = msc; _frmTolerancesStd.StdCode = stdCode; _frmTolerancesStd.ProducCodeNk = produccodeNk; _frmTolerancesStd.SteelcodeNk = steelcodeNk; _frmTolerancesStd.ProcessCode = processCode; _frmTolerancesStd.PopupLoad("2", ob); _customInfo = "2"; isLoaded = true; } else { if (_frmTolerancesStd.StdCode != "" && _frmTolerancesStd.StdCode != stdCode) { _frmTolerancesStd.StdCode = stdCode; _frmTolerancesStd.ProducCodeNk = produccodeNk; _frmTolerancesStd.SteelcodeNk = steelcodeNk; this.RefreshData(); } } } public void ShowPurchaseGrid(OpeBase ob) { if (isLoaded) { _frmTolerancesStd.PopupRefresh(); } else { _frmTolerancesStd.PopupLoad("2", ob); isLoaded = true; } } public void Query(string msc, string codeJg) { _frmTolerancesStd.Msc = msc; _frmTolerancesStd.CodeJg = codeJg; _frmTolerancesStd.ToolBar_Click(null, "Query"); } public void QueryStd(string stdCode, string modelCode) { _frmTolerancesStd.StdCode = stdCode; _frmTolerancesStd.ModelCode = modelCode; _frmTolerancesStd.ToolBar_Click(null, "Query"); } public void QueryPurchaseAgreement(string stdCodeNk) { _frmTolerancesStd.QueryPurchaseAgreement(stdCodeNk); } public void Save() { _frmTolerancesStd.ToolBar_Click(null, "Save"); } public void Delete() { _frmTolerancesStd.ToolBar_Click(null, "Delete"); } public void Resume() { _frmTolerancesStd.ToolBar_Click(null, "Resume"); } public void Copy() { _frmTolerancesStd.ToolBar_Click(null, "Copy"); } public void Paste() { _frmTolerancesStd.ToolBar_Click(null, "Paste"); } public void Group() { _frmTolerancesStd.ToolBar_Click(null, "Group"); } public void CancelGroup() { _frmTolerancesStd.ToolBar_Click(null, "Cancel"); } public void RefreshData() { _frmTolerancesStd.ToolBar_Click(null, "Refresh"); } public void Clear() { _frmTolerancesStd.DataTable2.Clear(); _frmTolerancesStd.DataTable1.Clear(); } public void ExpandFirstRow() { if (_frmTolerancesStd.UltraGrid1.Rows.Count > 0) { _frmTolerancesStd.UltraGrid1.Rows[0].ExpandAll(); } } private void UltraGrid1_AfterRowInsert(object sender, Infragistics.Win.UltraWinGrid.RowEventArgs e) { if (e.Row.HasParent()) return; if (_customInfo == "1") { e.Row.SetValue("MSC", _frmTolerancesStd.Msc); DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["MSC"].EditorComponent).DataSource; DataRow[] drs = dt.Select("MSC = '" + _frmTolerancesStd.Msc + "'"); if (drs.Length > 0) { e.Row.Cells["PSC"].Value = drs[0][2]; e.Row.Cells["PSC_DESC"].Value = drs[0][3]; e.Row.Cells["PRODUCNAME"].Value = drs[0][4]; if (e.Row.Cells.Exists("STD_NAME_B")) { e.Row.Cells["STD_NAME_B"].Value = drs[0][5]; } else { e.Row.Cells["STD_NAME"].Value = drs[0][5]; } e.Row.Cells["STEELNAME"].Value = drs[0][6]; e.Row.Cells["STD_STYLE_DESC"].Value = drs[0][7]; e.Row.Cells["STDSTYLE"].Value = drs[0][8]; } } else if (_customInfo == "2") { e.Row.Cells["STD_CODE"].Value = _frmTolerancesStd.StdCode; DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["STD_CODE"].EditorComponent).DataSource; DataRow[] drs = dt.Select("STD_CODE= '" + _frmTolerancesStd.StdCode + "'"); if (drs.Length > 0) { e.Row.Cells["STD_NAME"].Value = drs[0][1]; e.Row.Cells["STDSTYLE"].Value = drs[0][2]; } } } private void UltraGrid1_BeforeRowInsert(object sender, Infragistics.Win.UltraWinGrid.BeforeRowInsertEventArgs e) { if (BeforeRowInsert != null) { BeforeRowInsert(sender, e); } } } }