protected virtual void WfShowRibbonGroup(YRQueryType pYRQueryState, int pMaxRowCount) { Infragistics.Win.UltraWinToolbars.RibbonTab rbt; try { if (UtbmMain.Ribbon != null && UtbmMain.Ribbon.Tabs.Count > 0) { rbt = UtbmMain.Ribbon.Tabs[0]; } else { return; } switch (pYRQueryState) { case YRQueryType.NA: //無狀態 WfShowAllToolRibbons(rbt, true); if (pMaxRowCount == 1) { rbt.Groups["RibgDecide"].Tools["BtAll"].SharedProps.Visible = false; rbt.Groups["RibgDecide"].Tools["BtNone"].SharedProps.Visible = false; } else { rbt.Groups["RibgDecide"].Tools["BtAll"].SharedProps.Visible = true; rbt.Groups["RibgDecide"].Tools["BtNone"].SharedProps.Visible = true; } break; case YRQueryType.INQUERY: //處於查詢狀態 WfShowAllToolRibbons(rbt, true); rbt.Groups["RibgCrud"].Visible = false; rbt.Groups["RibgNav"].Visible = false; rbt.Groups["RibgDecide"].Tools["BtAll"].SharedProps.Visible = false; rbt.Groups["RibgDecide"].Tools["BtNone"].SharedProps.Visible = false; //if (pMaxRowCount == 1) //{ // rbt.Groups["RibgDecide"].Tools["BtAll"].SharedProps.Visible = false; // rbt.Groups["RibgDecide"].Tools["BtNone"].SharedProps.Visible = false; //} //else //{ // rbt.Groups["RibgDecide"].Tools["BtAll"].SharedProps.Visible = true; // rbt.Groups["RibgDecide"].Tools["BtNone"].SharedProps.Visible = true; //} break; } } catch (Exception ex) { throw ex; } }
private void FrmPickBase_Load(object sender, EventArgs e) { ToolClickEventArgs eTool; ToolBase utb; try { if (MsgInfoReturned == null) { WfSetSelectMode(1); return; } WfIniVar(); WfIniSqlBody(); //初始化sql字串 WfIniMasterGrid(); WfIniToolBarUI(); utb = UtbmMain.Tools["BtQuery"]; eTool = new ToolClickEventArgs(utb, null); UtbmMain_ToolClick(UtbmMain, eTool); if (MsgInfoReturned.IsAutoQuery == true || (MsgInfoReturned.IsAutoQuery == null && GlobalFn.isNullRet(Admi650Model.azp08, "") == "Y")) { this.FormQueryMode = YRQueryType.INQUERY; utb = UtbmMain.Tools["BtOk"]; eTool = new ToolClickEventArgs(utb, null); UtbmMain_ToolClick(UtbmMain, eTool); } else { WfDisplayMode(); } this.Shown += FrmPickBase_Shown; } catch (Exception ex) { GlobalFn.ofShowDialog(ex.Message); this.Close(); } }
protected virtual void UtbmMain_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e) { try { this.Cursor = Cursors.WaitCursor; WfCleanBottomMsg(); switch (e.Tool.Key.ToLower()) { case "btfirst": if (FormQueryMode == YRQueryType.NA) { this.uGrid_Master.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.FirstRowInGrid); } break; case "btprev": if (FormQueryMode == YRQueryType.NA) { this.uGrid_Master.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.PrevRow); } break; case "btnext": if (FormQueryMode == YRQueryType.NA) { this.uGrid_Master.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.NextRow); } break; case "btend": if (FormQueryMode == YRQueryType.NA) { this.uGrid_Master.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.LastRowInBand); } break; case "btquery": if (WfQuery() == true) { FormQueryMode = YRQueryType.INQUERY; WfDisplayMode(); } break; case "btok": uGrid_Master.UpdateData(); if (FormQueryMode == YRQueryType.INQUERY) //查詢中組合查詢條件 { WfQueryOk(); FormQueryMode = YRQueryType.NA; WfDisplayMode(); break; } if (FormQueryMode == YRQueryType.NA) //查詢完時 { WfReturnOk(); } break; case "btcancel": if (FormQueryMode == YRQueryType.INQUERY) { if (MsgInfoReturned.ParamSearchList != null) { DtMaster = BoMaster.OfGetDataTable(StrSqlBody + " AND 1<>1 ", MsgInfoReturned.ParamSearchList.ToArray()); } else { DtMaster = BoMaster.OfGetDataTable(StrSqlBody + " AND 1<>1 "); } BindingMaster.DataSource = DtMaster; this.FormQueryMode = YRQueryType.NA; WfDisplayMode(); } else { MsgInfoReturned.Result = DialogResult.Cancel; this.Close(); } break; case "btall": foreach (DataRow ldr in DtMaster.Rows) { ldr["is_pick"] = "Y"; } break; case "btnone": foreach (DataRow ldr in DtMaster.Rows) { ldr["is_pick"] = "N"; } break; } } catch (Exception ex) { WfShowErrorMsg(ex.Message); } finally { this.Cursor = Cursors.Default; } }
protected virtual void UtbmMain_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e) { try { this.Cursor = Cursors.WaitCursor; DataRow drNew; DataRow[] returnRowCollection; string extendSqlWhere = ""; WfCleanBottomMsg(); switch (e.Tool.Key.ToLower()) { case "btfirst": if (_formQueryMode == YRQueryType.NA) { this.uGrid_Master.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.FirstRowInGrid); } break; case "btprev": if (_formQueryMode == YRQueryType.NA) { this.uGrid_Master.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.PrevRow); } break; case "btnext": if (_formQueryMode == YRQueryType.NA) { this.uGrid_Master.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.NextRow); } break; case "btend": if (_formQueryMode == YRQueryType.NA) { this.uGrid_Master.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.LastRowInBand); } break; case "btquery": if (MsgInfoReturned.ParamSearchList == null) { _dtMaster = _boMaster.OfGetDataTable(_strSqlBody + " AND 1<>1 "); } else { _dtMaster = _boMaster.OfGetDataTable(_strSqlBody + " AND 1<>1 ", MsgInfoReturned.ParamSearchList.ToArray()); } //修改column 型別為string 並將實際的型別丟到 column.prefix foreach (DataColumn ldc_temp in _dtMaster.Columns) { if (ldc_temp.Prefix != "") { continue; } ldc_temp.Prefix = ldc_temp.DataType.Name; ldc_temp.DataType = typeof(string); //ldc_temp.DataType = System.Type.GetType("System.String"); } BindingMaster.DataSource = _dtMaster; uGrid_Master.DataSource = BindingMaster; drNew = _dtMaster.NewRow(); _dtMaster.Rows.Add(drNew); _formQueryMode = YRQueryType.INQUERY; if (iMaxPickRow == 1) { uGrid_Master.ActiveCell = uGrid_Master.Rows[0].Cells[0]; } else { uGrid_Master.ActiveCell = uGrid_Master.Rows[0].Cells[1]; } WfDisplayMode(); break; case "btok": if (_formQueryMode == YRQueryType.INQUERY) //查詢中組合查詢條件 { uGrid_Master.UpdateData(); extendSqlWhere = WfGetQueryString(_dtMaster.Rows[0], _azqTbList); if (MsgInfoReturned.ParamSearchList == null) { _dtMaster = _boMaster.OfGetDataTable(_strSqlBody + extendSqlWhere); } else { _dtMaster = _boMaster.OfGetDataTable(_strSqlBody + extendSqlWhere, MsgInfoReturned.ParamSearchList.ToArray()); } BindingMaster.DataSource = _dtMaster; //改取sort後的第一筆 if (_dtMaster != null && _dtMaster.Rows.Count > 0) { uGrid_Master.Rows.GetRowWithListIndex(0).Selected = true; } _formQueryMode = YRQueryType.NA; WfDisplayMode(); break; } if (_formQueryMode == YRQueryType.NA) //查詢完時 { uGrid_Master.UpdateData(); MsgInfoReturned.DataRowList.Clear(); if (iMaxPickRow == 1) { //if (uGrid_Master.Selected.Rows != null) if (uGrid_Master.ActiveRow != null) { MsgInfoReturned.DataRowList.Add(((uGrid_Master.ActiveRow as UltraGridRow).ListObject as DataRowView).Row); } } else { returnRowCollection = _dtMaster.Select(" is_pick ='Y' "); if (returnRowCollection != null) { MsgInfoReturned.DataRowList.AddRange(returnRowCollection); } MsgInfoReturned.StrMultiRtn = WfGetStrMultiRtrn(returnRowCollection); } this.Close(); } break; case "btcancel": this.Close(); break; case "btall": foreach (DataRow ldr in _dtMaster.Rows) { ldr["is_pick"] = "Y"; } break; case "btnone": foreach (DataRow ldr in _dtMaster.Rows) { ldr["is_pick"] = "N"; } break; } } catch (Exception ex) { WfShowMsg(ex.Message); } finally { this.Cursor = Cursors.Default; } }