using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Threading; using System.Text; using System.Windows.Forms; //using Core.Mes.ClientFrameWork; using System.Collections; using Infragistics.Win.UltraWinGrid; using Infragistics.Win.UltraWinDataSource; namespace Core.LgMes.Client.LgDeviceManager { public partial class FrmSteelLadleMgt : Core.Mes.Client.Common.frmStyleBase { private bool bReadOnly = false; //是否只读权限 add on 2009-3-24 private bool bShow = true; //第一次显示详细信息 private Thread _getDataThread; // 取数据线程 private bool _bIfGetData = true; // 控制取数据线程循环的标志 private DataSet _dsMain; private bool _IsUpdateFlag = false; private bool _flagaffterrow = true; private delegate void SetDataThreadDelegate(); // 刷新数据线程的一个委托方法,目的是达到界面所有数 private void SetEditAreaStyle() { try { ultraGrid3.DisplayLayout.Override.HeaderAppearance.BackColorAlpha = Infragistics.Win.Alpha.Default; ultraGrid3.DisplayLayout.Override.CardAreaAppearance.BackColor = Color.Gainsboro; ultraGrid3.DisplayLayout.Override.HeaderAppearance.BackColor = Color.Gainsboro; ultraGrid3.DisplayLayout.Override.CellAppearance.BackColor = Color.LightCyan; ultraGrid4.DisplayLayout.Override.HeaderAppearance.BackColorAlpha = Infragistics.Win.Alpha.Default; ultraGrid4.DisplayLayout.Override.CardAreaAppearance.BackColor = Color.Gainsboro; ultraGrid4.DisplayLayout.Override.HeaderAppearance.BackColor = Color.Gainsboro; ultraGrid4.DisplayLayout.Override.CellAppearance.BackColor = Color.LightCyan; ultraGrid6.DisplayLayout.Override.HeaderAppearance.BackColorAlpha = Infragistics.Win.Alpha.Default; ultraGrid6.DisplayLayout.Override.CardAreaAppearance.BackColor = Color.Gainsboro; ultraGrid6.DisplayLayout.Override.HeaderAppearance.BackColor = Color.Gainsboro; ultraGrid6.DisplayLayout.Override.CellAppearance.BackColor = Color.LightCyan; ////ultraGrid7.DisplayLayout.Override.HeaderAppearance.BackColorAlpha = Infragistics.Win.Alpha.Default; ////ultraGrid7.DisplayLayout.Override.CardAreaAppearance.BackColor = Color.Gainsboro; ////ultraGrid7.DisplayLayout.Override.HeaderAppearance.BackColor = Color.Gainsboro; ////ultraGrid7.DisplayLayout.Override.CellAppearance.BackColor = Color.LightCyan; } catch { } } public FrmSteelLadleMgt() { InitializeComponent(); this.ultraExpandableGroupBox1.ExpandedStateChanged += new System.EventHandler(this.ultraExpandableGroupBox1_ExpandedStateChanged); } #region "formload" private void proc_SetToolButtonsInvisible() { try { ultraToolbarsManager1.Tools["PotSend"].SharedProps.Visible = false; ultraToolbarsManager1.Tools["PotArrival"].SharedProps.Visible = false; ultraToolbarsManager2.Tools["add"].SharedProps.Visible = false; ultraToolbarsManager2.Tools["del"].SharedProps.Visible = false; ultraToolbarsManager2.Tools["edit"].SharedProps.Visible = false; ultraToolbarsManager2.Tools["Toast"].SharedProps.Visible = false; ultraToolbarsManager2.Tools["repair"].SharedProps.Visible = false; } catch { } } private bool proc_JudgeReadOnly() { try { if (bReadOnly) MessageBox.Show("您没有操作权限!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return bReadOnly; } catch { return true; } } private void frmLadleManage_Load(object sender, EventArgs e) { { string strKey = this.Key; if (strKey.IndexOf("@") > 0 && strKey.Substring(strKey.IndexOf("@") + 1) == "1") { bReadOnly = true; proc_SetToolButtonsInvisible(); } } //add on 2009-3-24 this.SetEditAreaStyle(); StartUpThread(); initializeData(); Getpotbasedata(); Getrightdata(); SetColumnLVL(); SetColumnPOTSTAT(); SetColumnUSESTATE(); SetColumnPOSITION(); SetColumnPOTSTYLE(); SetColumnhuaban(); SetColumnnaicai(); SetColumnVentilate(); } private void SetColumnLVL() { DataTable dt = new DataTable(); dt.TableName = "JIALIAO"; DataColumn dc = new DataColumn("BCBM", Type.GetType("System.String")); dt.Columns.Add(dc); dc = new DataColumn("BCNA", Type.GetType("System.String")); dt.Columns.Add(dc); DataRow dr = dt.NewRow(); dr["BCBM"] = "A"; dr["BCNA"] = "A"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "B"; dr["BCNA"] = "B"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "C"; dr["BCNA"] = "C"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "D"; dr["BCNA"] = "D"; dt.Rows.Add(dr); //Core.LgMes.Client.LgIntegrationQuery.JJBStaticFunction.SetGridDropDownListCell("LVL", 0, "钢包等级", 60, ultraGrid4, dt, "BCBM", "BCNA"); } private void SetColumnPOTSTAT() { DataTable dt = new DataTable(); dt.TableName = "JIALIAO"; DataColumn dc = new DataColumn("BCBM", Type.GetType("System.String")); dt.Columns.Add(dc); dc = new DataColumn("BCNA", Type.GetType("System.String")); dt.Columns.Add(dc); DataRow dr = dt.NewRow(); dr["BCBM"] = "干净"; dr["BCNA"] = "干净"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "有渣子"; dr["BCNA"] = "有渣子"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "有包底小于0.5吨"; dr["BCNA"] = "有包底小于0.5吨"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "有包底0.5到1吨"; dr["BCNA"] = "有包底0.5到1吨"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "有包底1到2吨"; dr["BCNA"] = "有包底1到2吨"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "有包底2到3吨"; dr["BCNA"] = "有包底2到3吨"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "有包底大于3吨"; dr["BCNA"] = "有包底大于3吨"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "新包"; dr["BCNA"] = "新包"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "中修包"; dr["BCNA"] = "中修包"; dt.Rows.Add(dr); //Core.LgMes.Client.LgIntegrationQuery.JJBStaticFunction.SetGridDropDownListCell("POTSTATUS", 0, "包况", 100, ultraGrid4, dt, "BCBM", "BCNA"); } private void SetColumnUSESTATE() { DataTable dt = new DataTable(); dt.TableName = "JIALIAO"; DataColumn dc = new DataColumn("BCBM", Type.GetType("System.String")); dt.Columns.Add(dc); dc = new DataColumn("BCNA", Type.GetType("System.String")); dt.Columns.Add(dc); DataRow dr = dt.NewRow(); dr["BCBM"] = "在用"; dr["BCNA"] = "在用"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "待用"; dr["BCNA"] = "待用"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "待修"; dr["BCNA"] = "待修"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "烘烤"; dr["BCNA"] = "烘烤"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "维修"; dr["BCNA"] = "维修"; dt.Rows.Add(dr); //Core.LgMes.Client.LgIntegrationQuery.JJBStaticFunction.SetGridDropDownListCell("STATUS", 0, "使用状态", 60, ultraGrid3, dt, "BCBM", "BCNA"); } private void SetColumnPOSITION() { DataTable dt = new DataTable(); dt.TableName = "JIALIAO"; DataColumn dc = new DataColumn("BCBM", Type.GetType("System.String")); dt.Columns.Add(dc); dc = new DataColumn("BCNA", Type.GetType("System.String")); dt.Columns.Add(dc); DataRow dr = dt.NewRow(); dr["BCBM"] = "等待区域"; dr["BCNA"] = "等待区域"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "维修区域"; dr["BCNA"] = "维修区域"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "行车吊包"; dr["BCNA"] = "行车吊包"; dt.Rows.Add(dr); //Core.LgMes.Client.LgIntegrationQuery.JJBStaticFunction.SetGridDropDownListCell("NOWPOSITION", 0, "当前位置", 60, ultraGrid3, dt, "BCBM", "BCNA"); } private void SetColumnPOTSTYLE() { DataTable dt = new DataTable(); dt.TableName = "JIALIAO"; DataColumn dc = new DataColumn("BCBM", Type.GetType("System.String")); dt.Columns.Add(dc); dc = new DataColumn("BCNA", Type.GetType("System.String")); dt.Columns.Add(dc); DataRow dr = dt.NewRow(); dr["BCBM"] = "有碳包"; dr["BCNA"] = "有碳包"; dt.Rows.Add(dr); dr = dt.NewRow(); dr["BCBM"] = "无碳包"; dr["BCNA"] = "无碳包"; dt.Rows.Add(dr); //Core.LgMes.Client.LgIntegrationQuery.JJBStaticFunction.SetGridDropDownListCell("LADLETYPE", 0, "钢包种类", 60, ultraGrid3, dt, "BCBM", "BCNA"); } /// /// 滑板制造厂 /// private void SetColumnhuaban() { DataTable dt = new DataTable(); dt = GetFactory(LadleCommonClass.strSlideBoardFactoryCode); //Core.LgMes.Client.LgIntegrationQuery.JJBStaticFunction.SetGridDropDownListCell("HBMANUFACTURER", 0, "滑板制造厂", 82, ultraGrid3, dt, "BASECODE", "BASENAME"); } /// /// 耐材制造厂 /// private void SetColumnnaicai() { DataTable dt = new DataTable(); dt = GetFactory(LadleCommonClass.strRefractoryMatterFactoryCode); //Core.LgMes.Client.LgIntegrationQuery.JJBStaticFunction.SetGridDropDownListCell("NCMANUFACTURER", 0, "耐材制造厂", 71, ultraGrid3, dt, "BASECODE", "BASENAME"); } /// /// 透气蕊厂家 /// private void SetColumnVentilate() { DataTable dt = new DataTable(); dt = GetFactory(LadleCommonClass.strVentilateFactoryCode); //Core.LgMes.Client.LgIntegrationQuery.JJBStaticFunction.SetGridDropDownListCell("BRICKFACTORY", 0, "透气蕊制造厂", 82, ultraGrid3, dt, "BASECODE", "BASENAME"); } #endregion #region Thread Handle /// /// 启动线程主程序 /// private void StartUpThread() { //ThreadStart ts = new ThreadStart(GetDataThread); //_getDataThread = new Thread(ts); ////_getDataThread.Name = "GetDataThread "; ////_getDataThread.Start(); } /// /// 取数据线程程序 /// //private void GetDataThread() //{ // while (_bIfGetData) // { // if (!this.On_Off_Thread) // { // System.Threading.Thread.Sleep(5000); // continue; // } // try // { // this.Invoke(new SetDataThreadDelegate(Getpotbasedata)); // Getrightdata(); // Thread.Sleep(15000); // } // catch { } // } //} #endregion #region "function" private DataRow GetRepairData(string strNo) { try { string err = ""; DataSet ds = null;// (DataSet)ClientCommon._RemotingHelp.ExecuteMethod("LgDeviceManager", "Core.LgMes.Server.LgDeviceManager.potmanger", "GetLatelyRepair", new object[] { strNo }, out err); DataRow dr = ds.Tables[0].Rows[0]; return dr; } catch { return null; } } private DataRow Getworkdata(string strNo) { try { string err = ""; DataSet ds = null;// (DataSet)ClientCommon._RemotingHelp.ExecuteMethod("LgDeviceManager", "Core.LgMes.Server.LgDeviceManager.potmanger", "Getworkdata", new object[] { strNo }, out err); DataRow dr = ds.Tables[0].Rows[0]; return dr; } catch { return null; } } private void Getpotbasedata() { string err = ""; try { _dsMain = null;// (DataSet)ClientCommon._RemotingHelp.ExecuteMethod("LgDeviceManager", "Core.LgMes.Server.LgDeviceManager.potmanger", //"Getpotbasedata", new object[] { }, out err); ultraDataSource3.Rows.Clear(); if (_dsMain.Tables.Count > 0) { foreach (DataRow dr in _dsMain.Tables[0].Rows) { ultraDataSource3.Rows.Add(new object[] { dr["LADLEID"].ToString(), dr["LVL"].ToString(), dr["HEATNO"].ToString(), dr["STATUS"].ToString(), dr["POTSTATUS"].ToString(), dr["USETIMES"].ToString(), dr["NOWPOSITION"].ToString(), dr["CVTPOS"].ToString(), dr["CURRSTEELWEIGHT"].ToString(), dr["STEELACCOUNT"].ToString(), dr["CURRARRIVETIME"].ToString() }); } } } catch (Exception ex) { Console.WriteLine(ex.Message); } SetLeftTableRowColor(); } private void Getrightdata() { string err = ""; try { DataSet ds = null;// (DataSet)ClientCommon._RemotingHelp.ExecuteMethod("LgDeviceManager", //"Core.LgMes.Server.LgDeviceManager.potmanger", //"Getsenddata", new object[] { }, out err); ultraDataSource6.Rows.Clear(); if (ds.Tables.Count > 0) { foreach (DataRow dr in ds.Tables[0].Rows) { ultraDataSource6.Rows.Add(new object[] { dr["SENDTOOLID"].ToString(), dr["SENDOVENSEATID"].ToString(), dr["SENDTIME"].ToString(), }); } } } catch (Exception ex) { Console.WriteLine(ex.Message); } } private void initializeData() { ultraDataSource7.Rows.Add(new object[] { "", "", "", "", "" }); ultraDataSource8.Rows.Add(new object[] { "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" }); ultraDataSource4.Rows.Add(new object[] { "", "", "", null, null, null, "" }); //ultraDataSource9.Rows.Add(new object[] { "", null, null, "", null, null, "", null, null, "", null, null, "", null, null, "", null, null, "", "", "", "", "", "" }); } private void SetDetailData(string strNo) { //string strSmeltingID = ""; DataRow dr = GetDetailTableData(strNo); SetDataSource(this.ultraDataSource7, dr); SetDataSource(this.ultraDataSource8, dr); //if (dr["SMELTINGID"].ToString().Length == 9) //{ // strSmeltingID = dr["SMELTINGID"].ToString(); // //dr = GetWorkData(strSmeltingID); // //SetDataSource(this.ultraDataSource5, dr); //} dr = Getworkdata(strNo); //SetDataSource(this.ultraDataSource9, dr); dr = GetRepairData(strNo); SetDataSource(this.ultraDataSource4, dr); } private DataRow GetDetailTableData(string strNo) { try { string err = ""; DataSet ds = null;// (DataSet)ClientCommon._RemotingHelp.ExecuteMethod("LgDeviceManager", "Core.LgMes.Server.LgDeviceManager.potmanger", "GetTPM_POTBASEINFO_All", new object[] { strNo }, out err); DataRow dr = ds.Tables[0].Rows[0]; return dr; } catch { return null; } } private void SetDataSource(UltraDataSource uds, DataRow dr) { int count = uds.Band.Columns.Count; for (int i = 0; i < count; i++) { try { string strCol = uds.Band.Columns[i].Key; uds.Rows[0][strCol] = ""; uds.Rows[0][strCol] = dr[strCol]; } catch { } } } private void SetLeftTableRowColor() { for (int i = 0; i < this.ultraGrid1.Rows.Count; i++) { switch (this.ultraGrid1.Rows[i].Cells[3].Value.ToString()) { case "在用": this.ultraGrid1.Rows[i].Appearance.BackColor = Color.LightGreen; break; case "待用": this.ultraGrid1.Rows[i].Appearance.BackColor = Color.LightYellow; break; case "烘烤": this.ultraGrid1.Rows[i].Appearance.BackColor = Color.LightBlue; break; default: this.ultraGrid1.Rows[i].Appearance.BackColor = Color.LightCyan; break; } } } /// /// 获取滑板、耐材、透气蕊厂家 /// private DataTable GetFactory(string strBaseCode) { DataTable dtFactory = null; try { string strErr = ""; object obj = null;// ClientCommon._RemotingHelp.ExecuteMethod("LgDeviceManager", "Core.LgMes.Server.LgDeviceManager.LadleManager", //"GetFactory", new object[] { strBaseCode, "", "order by BASENAME" }, out strErr); if (strErr == "" && obj != null) { DataSet ds = obj as DataSet; dtFactory = ds.Tables[0]; } } catch { } return dtFactory; } #endregion #region "gridevent" private void ultraGrid1_AfterRowActivate_1(object sender, EventArgs e) { if (!bShow) return; if (this.ultraGrid1.ActiveRow == null) return; //if (!this.ultraExpandableGroupBox1.Expanded) return; if (!_flagaffterrow) return; string strNo = this.ultraGrid1.ActiveRow.Cells[0].Value.ToString(); SetDetailData(strNo); bShow = false; } #endregion #region "toolbarevent" private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e) { switch (e.Tool.Key) { case "detail": bool b = this.ultraExpandableGroupBox1.Expanded; if (this.ultraGrid1.ActiveRow != null && !b) { string strNo = this.ultraGrid1.ActiveRow.Cells[0].Value.ToString(); SetDetailData(strNo); } this.ultraExpandableGroupBox1.Expanded = !b; break; case "PotSendSucceed": FrmPotSendSuccesful frm3 = new FrmPotSendSuccesful(ob); frm3.ShowDialog(); break; case "PotSend": if (proc_JudgeReadOnly()) return; frmsendpot frm = new frmsendpot(); if (_dsMain == null) { MessageBox.Show("数据库连接异常,请稍后再试!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } frm._ds = this._dsMain.Copy(); frm.ShowDialog(); break; case "PotArrival": if (proc_JudgeReadOnly()) return; FrmPotArrivall frm1 = new FrmPotArrivall(ob); if (_dsMain == null) { MessageBox.Show("数据库连接异常,请稍后再试!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } frm1._ds = this._dsMain.Copy(); frm1.ShowDialog(); break; //case "PotSel" : // FrmCasAffirm frm2 = new FrmCasAffirm(); // frm2.RemotingHelp = this.RemotingHelp; // frm2.ShowDialog(); // break; case "ranklog": frmpotrank frm4 = new frmpotrank(ob); if (this.ultraGrid1.ActiveRow != null) { try { frm4._strPotNo = this.ultraGrid1.ActiveRow.Cells["POTNO"].Value.ToString(); } catch { } } frm4.ShowDialog(); break; //case "ok" : // Core.Sglg.Client.Tpm.FrmCasAffirm frm5 = new Core.Sglg.Client.Tpm.FrmCasAffirm(); // frm5.RemotingHelp = this.RemotingHelp; // frm5.ShowDialog(); // break; } } private void ultraToolbarsManager2_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e) { string strPotNo = this.ultraDataSource7.Rows[0]["LADLEID"].ToString(); switch (e.Tool.Key) { case "HotRecLog": //展现钢包烘烤记录 frmhothis HotRecfrmLog = new frmhothis(this.ob); HotRecfrmLog.potno = strPotNo; // HotRecfrmLog.Location = this.GetChildWindowLocation(HotRecfrmLog.Size); HotRecfrmLog.ShowDialog(); break; case "add": if (proc_JudgeReadOnly()) return; Edit(); this.ultraToolbarsManager2.Tools["ok"].Tag = "add"; _flagaffterrow = false; break; case "del": if (proc_JudgeReadOnly()) return; if (strPotNo == null || strPotNo == "") return; DialogResult dr = MessageBox.Show("删除钢包将删除所有相关信息,是否确认?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); if (dr == DialogResult.No) return; if (Del(strPotNo)) { _IsUpdateFlag = true; RefreshRightTable(); } Getpotbasedata(); break; case "edit": if (proc_JudgeReadOnly()) return; Edit(); this.ultraToolbarsManager2.Tools["ok"].Tag = "edit"; _flagaffterrow = false; break; case "query": frmrequipot frm = new frmrequipot(); frm.ShowDialog(); if (frm._updateFlag) { string strNo = frm._strPotNo; SetDetailData(strNo); } break; case "ok": _flagaffterrow = true; if (strPotNo == null || strPotNo == "") { MessageBox.Show("请输入钢包号!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (Update(this.ultraToolbarsManager2.Tools["ok"].Tag.ToString())) { SetDetailToolBarEnable(true); this.SetGridCellAllowEdit(ultraGrid3, false); this.SetGridCellAllowEdit(ultraGrid4, false); _IsUpdateFlag = true; } Getpotbasedata(); break; case "cancel": _flagaffterrow = true; SetDetailToolBarEnable(true); this.SetGridCellAllowEdit(ultraGrid3, false); this.SetGridCellAllowEdit(ultraGrid4, false); break; case "Toast": if (proc_JudgeReadOnly()) return; frmhot frm1 = new frmhot(this.ob); frm1._strPotNo = strPotNo; frm1.ShowDialog(); break; case "repair": if (proc_JudgeReadOnly()) return; frmpotrepaire frm2 = new frmpotrepaire(ob); frm2._strPotNo = strPotNo; frm2.ShowDialog(); break; case "RepairLog": frmrepairehis frm3 = new frmrepairehis(ob); frm3.potno = strPotNo; frm3.ShowDialog(); break; case "UsedLog": frmworkhis frm4 = new frmworkhis(ob); frm4.potno = strPotNo; frm4.ShowDialog(); break; case "fore": //将位置移动到前一条记录 if (ultraGrid1.ActiveRow == null) { ultraGrid1.Rows[0].Activate(); } else { int nIndex = ultraGrid1.ActiveRow.Index; nIndex = nIndex - 1; if (nIndex < 0) nIndex = 0; ultraGrid1.Rows[nIndex].Activate(); } break; case "next": if (ultraGrid1.ActiveRow == null) { ultraGrid1.Rows[0].Activate(); } else { int nIndex = ultraGrid1.ActiveRow.Index; nIndex = nIndex + 1; if (nIndex >= ultraGrid1.Rows.Count) nIndex = 0; ultraGrid1.Rows[nIndex].Activate(); } break; } } private void Edit() { SetDetailToolBarEnable(false); SetGridCellAllowEdit(this.ultraGrid3, true); SetGridCellAllowEdit(this.ultraGrid4, true); } private void SetDetailToolBarEnable(bool bEnable) { int count = this.ultraToolbarsManager2.Tools.Count; for (int i = 0; i < count; i++) { this.ultraToolbarsManager2.Tools[i].SharedProps.Enabled = bEnable; } this.ultraToolbarsManager2.Tools["ok"].SharedProps.Enabled = !bEnable; this.ultraToolbarsManager2.Tools["cancel"].SharedProps.Enabled = !bEnable; this.ultraToolbarsManager2.Tools["ok"].SharedProps.Visible = !bEnable; this.ultraToolbarsManager2.Tools["cancel"].SharedProps.Visible = !bEnable; } private void SetGridCellAllowEdit(Infragistics.Win.UltraWinGrid.UltraGrid ug, bool IsAllow) { Infragistics.Win.UltraWinGrid.UltraGridBand band = ug.DisplayLayout.Bands[0]; for (int i = 0; i < band.Columns.Count; i++) { if (IsAllow) band.Columns[i].CellActivation = Activation.AllowEdit; else band.Columns[i].CellActivation = Activation.NoEdit; } } private bool Del(string strPotNo) { string strMsg = string.Format("删除{0}号钢包失败!", strPotNo); ; try { string strOut = ""; object obj = null;// Core.Mes.ClientFrameWork.ClientCommon._RemotingHelp.ExecuteMethod("LgDeviceManager", "Core.LgMes.Server.LgDeviceManager.potmanger", "DeletePot", new object[] { strPotNo }, out strOut); if (strOut == "" && Convert.ToInt32(obj) > 0) { strMsg = string.Format("删除{0}号钢包成功!", strPotNo); return true; } } catch { } MessageBox.Show(strMsg, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return false; } private void RefreshRightTable() { if (_IsUpdateFlag) { Getpotbasedata(); _IsUpdateFlag = false; } } private bool Update(string strOpe) { ArrayList ar = new ArrayList(); this.ultraGrid3.UpdateData(); this.ultraGrid4.UpdateData(); AddParmToArrayFromDataSource(this.ultraGrid4, ar); AddParmToArrayFromDataSource(this.ultraGrid3, ar); string strMethod = ""; string strMsg = ""; switch (strOpe) { case "add": strMethod = "InsertTPM_POTBASEINFO"; strMsg = "新增失败!\n"; break; case "edit": strMethod = "UpdateTPM_POTBASEINFO"; strMsg = "修改失败!\n"; break; } try { string strOut = ""; object obj = null;// Core.Mes.ClientFrameWork.ClientCommon._RemotingHelp.ExecuteMethod("LgDeviceManager", "Core.LgMes.Server.LgDeviceManager.potmanger", strMethod, new object[] { ar }, out strOut); if (strOut == "" && Convert.ToInt32(obj) > 0) return true; strMsg += strOut; } catch { } MessageBox.Show(strMsg, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); return false; } private void AddParmToArrayFromDataSource(UltraGrid ug, ArrayList ar) { int count = ug.DisplayLayout.Bands[0].Columns.Count; for (int i = 0; i < count; i++) { if (ug.Rows[0].Cells[i].Value == null || ug.Rows[0].Cells[i].Value.ToString().Trim() == "") { if (ug.DisplayLayout.Bands[0].Columns[i].Tag != null && ug.DisplayLayout.Bands[0].Columns[i].Tag.ToString() == "string") ar.Add(""); else ar.Add("0"); } else ar.Add(ug.Rows[0].Cells[i].Value); } } #endregion private void ultraGrid4_AfterCellListCloseUp(object sender, CellEventArgs e) { switch (e.Cell.Column.Key) { case "POTSTATUS": if (e.Cell.Text == "新包" || e.Cell.Text == "中修包") { try { this.ultraGrid4.Rows[0].Cells["LVL"].Value = "D"; this.ultraGrid4.UpdateData(); } catch { } } else if (e.Cell.Text != "干净" && this.ultraGrid4.Rows[0].Cells["LVL"].Value.ToString() == "A") { try { this.ultraGrid4.Rows[0].Cells["LVL"].Value = "B"; this.ultraGrid4.UpdateData(); } catch { } } break; case "LVL": if (this.ultraGrid4.Rows[0].Cells["POTSTATUS"].Value.ToString() != "干净" && e.Cell.Text == "A") { this.ultraGrid4.Rows[0].Cells["LVL"].Value = "B"; this.ultraGrid4.UpdateData(); } break; } } private void ultraExpandableGroupBox1_ExpandedStateChanged(object sender, EventArgs e) { if (ultraExpandableGroupBox1.Expanded) ultraToolbarsManager1.Tools["detail"].SharedProps.Caption = "隐藏钢包详细信息"; else ultraToolbarsManager1.Tools["detail"].SharedProps.Caption = "显示钢包详细信息"; } private void ultraGrid1_Click(object sender, EventArgs e) { try { if (ultraGrid1.Rows.Count == 0) return; if (ultraGrid1.ActiveRow == null) return; if (!_flagaffterrow) return; string strNo = this.ultraGrid1.ActiveRow.Cells[0].Value.ToString(); SetDetailData(strNo); } catch (Exception ex) { MessageBox.Show(ex.Message); } } } }