private void gridView1_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e) { var myView = sender as GridView; DataRow dr = myView.GetDataRow(e.RowHandle); if (dr == null) { return; } //投票 if (e.Column.Name == colVote.Name) { ButtonEditViewInfo buttonVI = (ButtonEditViewInfo)((GridCellInfo)e.Cell).ViewInfo; VoteButtonStatusSetting(dr, buttonVI); } //操作 else if (e.Column.Name == colOperate.Name) { ButtonEditViewInfo buttonVI = (ButtonEditViewInfo)((GridCellInfo)e.Cell).ViewInfo; OperateButtonStatusSetting(dr, buttonVI); } }
/// <summary> /// 设定树的单元格显示事件 /// </summary> private void treeListDocTemp_CustomDrawNodeCell(object sender, DevExpress.XtraTreeList.CustomDrawNodeCellEventArgs e) { try { if (e.Node == null) { return; } string tableNameStr = DataTypeConvert.GetString(e.Node["TableName"]).Trim(); if (e.Column.FieldName == "Upload") { ButtonEditViewInfo buttonEditViewInfo = (ButtonEditViewInfo)e.EditViewInfo; if (buttonEditViewInfo.RightButtons.Count > 0) { if (tableNameStr != "") { buttonEditViewInfo.RightButtons[0].State = DevExpress.Utils.Drawing.ObjectState.Normal; buttonEditViewInfo.RightButtons[1].State = DevExpress.Utils.Drawing.ObjectState.Normal; buttonEditViewInfo.RightButtons[2].State = DevExpress.Utils.Drawing.ObjectState.Normal; } else { buttonEditViewInfo.RightButtons[0].State = DevExpress.Utils.Drawing.ObjectState.Disabled; buttonEditViewInfo.RightButtons[1].State = DevExpress.Utils.Drawing.ObjectState.Disabled; buttonEditViewInfo.RightButtons[2].State = DevExpress.Utils.Drawing.ObjectState.Disabled; } } } } catch (Exception ex) { //ExceptionHandler.HandleException(this.Text + "--设定树的单元格显示事件错误。", ex); ExceptionHandler.HandleException(this.Text + "--" + tsmiSdsddyg.Text, ex); } }
private void gridView1_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e) { if (e.Column.FieldName == "Column1") { ButtonEditViewInfo editInfo = (ButtonEditViewInfo)((DevExpress.XtraGrid.Views.Grid.ViewInfo.GridCellInfo)e.Cell).ViewInfo; editInfo.RightButtons[0].Button.Caption = e.DisplayText; } }
protected override void DrawButton(ButtonEditViewInfo viewInfo, EditorButtonObjectInfoArgs info) { RepositoryItemCustomButtonEdit item = viewInfo.Item as RepositoryItemCustomButtonEdit; CustomEditorButtonObjectInfoArgs args = info as CustomEditorButtonObjectInfoArgs; args.SetCustomImage(item); base.DrawButton(viewInfo, info); }
private void OperateButtonStatusSetting(DataRow dr, ButtonEditViewInfo buttonVI) { buttonVI.RightButtons[0].Button.Enabled = true; buttonVI.RightButtons[0].State = ObjectState.Normal; buttonVI.RightButtons[1].Button.Enabled = false;// LoginInfo.CurrentUser.IsAdmin; buttonVI.RightButtons[1].State = ObjectState.Disabled; }
protected override void DrawButton(ButtonEditViewInfo viewInfo, EditorButtonObjectInfoArgs info) { DrawButtonEventArgs e = new DrawButtonEventArgs(info); (viewInfo.Item as RepositoryItemMyButtonEdit).RaiseDrawButtonEvent(e); if (!e.Handled) { base.DrawButton(viewInfo, info); } }
protected override void DrawButton(ButtonEditViewInfo viewInfo, EditorButtonObjectInfoArgs info) { RepositoryItemSearchButtonEdit ri = (viewInfo.Item as RepositoryItemSearchButtonEdit); if ((ri != null) && (ri.ButtonSearchIndex == ri.Buttons.IndexOf(info.Button)) && (ri.IsEditValueNull(viewInfo.EditValue))) { DrawImage(info); } else { base.DrawButton(viewInfo, info); } }
private bool AllowOpenEditorOnMouseDown(XGridView view, GridHitInfo gridHit, int focusedRowHandle) { if (gridHit == null || gridHit.Column == null || !(gridHit.Column.RealColumnEdit is RepositoryItemTextEdit)) { return(true); } // grid focused and cell focused if (!this.dontOpenEditor && gridHit.RowHandle == focusedRowHandle && gridHit.Column == view.FocusedColumn) { return(true); // !this.dontOpenEditor; } bool buttonVisible; if (view.OptionsView.ShowButtonMode == ShowButtonModeEnum.ShowAlways) { buttonVisible = true; } else if (view.OptionsView.ShowButtonMode == ShowButtonModeEnum.ShowForFocusedRow) { buttonVisible = gridHit.RowHandle == focusedRowHandle; } else if (view.OptionsView.ShowButtonMode == ShowButtonModeEnum.ShowForFocusedCell) { buttonVisible = gridHit.RowHandle == focusedRowHandle && gridHit.Column == view.FocusedColumn; } else { buttonVisible = false; } if (!buttonVisible) { return(false); } var gridViewInfo = view.ViewInfo; var cellInfo = gridViewInfo.GetGridCellInfo(view.FocusedRowHandle, view.FocusedColumn); ButtonEditViewInfo editViewInfo = cellInfo.ViewInfo as ButtonEditViewInfo; if (editViewInfo == null) { return(!this.dontOpenEditor); // standard text edit (w/o buttons) } var point = gridHit.HitPoint; point.Offset(-cellInfo.Bounds.Left, -cellInfo.Bounds.Top); var hit = editViewInfo.CalcHitInfo(point); return(hit.HitTest == EditHitTest.Button || hit.HitTest == EditHitTest.Button2); }
private int CalcButtonsWidth(ControlGraphicsInfoArgs info) { ButtonEditViewInfo vi = info.ViewInfo as ButtonEditViewInfo; int iResult = 0; if (vi.RightButtons.Count > 0) { for (int i = 0; i < vi.RightButtons.Count; i++) { iResult += vi.RightButtons[i].Bounds.Width; } } return(iResult); }
private void OperateButtonStatusSetting(DataRow dr, ButtonEditViewInfo buttonVI) { var investorCode = dr[this.colApplyUser.FieldName]?.ToString(); if (LoginInfo.CurrentUser.IsAdmin || investorCode == LoginInfo.CurrentUser.UserCode) { buttonVI.RightButtons[0].Button.Enabled = true; buttonVI.RightButtons[0].State = ObjectState.Normal; } else { buttonVI.RightButtons[0].Button.Enabled = false; buttonVI.RightButtons[0].State = ObjectState.Disabled; } }
void _GridView_CustomDrawCell(object sender, RowCellCustomDrawEventArgs e) { if (e.Column == _Column) { ButtonEditViewInfo viewInfo = (e.Cell as GridCellInfo).ViewInfo as ButtonEditViewInfo; if (viewInfo != null) { EditorButtonObjectInfoArgs buttonInfo = viewInfo.ButtonInfoById(0); if (buttonInfo != null) { SetButtonImage(buttonInfo.Button, e.RowHandle); } } } }
private void repositoryItemButtonEdit1_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e) { if (e.Button.Kind == ButtonPredefines.Ellipsis) { MessageBox.Show("This is a dialog box."); } if (e.Button.Kind == ButtonPredefines.Combo) { ButtonEdit editor = sender as ButtonEdit; ButtonEditViewInfo evi = editor.GetViewInfo() as ButtonEditViewInfo; EditorButtonObjectInfoArgs bvi = evi.ButtonInfoByButton(e.Button); Point pt = new Point(bvi.Bounds.Left, bvi.Bounds.Bottom); pt = editor.PointToScreen(pt); popupMenu1.ShowPopup(pt); } }
private void gridView1_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e) { if (e.Column.FieldName == "Text" && e.RowHandle == rowHandle) { GridCellInfo cellInfo = e.Cell as GridCellInfo; ButtonEditViewInfo info = cellInfo.ViewInfo as ButtonEditViewInfo; Rectangle textRect = info.MaskBoxRect; textRect.Offset(e.Bounds.X, e.Bounds.Y); EditorButtonObjectInfoArgs args = new EditorButtonObjectInfoArgs(e.Cache, info.Item.Buttons[0], e.Appearance); Rectangle minBounds = info.EditorButtonPainter.CalcObjectMinBounds(args); args.Bounds = new Rectangle(e.Bounds.Right - minBounds.Width, e.Bounds.Y + (e.Bounds.Height - minBounds.Height) / 2, minBounds.Width, minBounds.Height); info.EditorButtonPainter.DrawObject(args); e.Cache.DrawString(e.DisplayText, e.Appearance.Font, e.Appearance.GetForeBrush(e.Cache), textRect, e.Appearance.GetStringFormat()); e.Handled = true; } }
protected override void DrawButton(ButtonEditViewInfo viewInfo, EditorButtonObjectInfoArgs info) { if (viewInfo is PaddingButtonEditViewInfo) { Brush b = viewInfo.PaintAppearance.GetBackBrush(info.Cache); info.Graphics.FillRectangle(b, info.Bounds); info.Bounds = ((PaddingButtonEditViewInfo)viewInfo).AdjustBoundsWithMargins(info.Bounds); base.DrawButton(viewInfo, info); info.Bounds = ((PaddingButtonEditViewInfo)viewInfo).RevertMarginedBounds(info.Bounds); } else { base.DrawButton(viewInfo, info); } }
protected override void DrawButton(ButtonEditViewInfo viewInfo, EditorButtonObjectInfoArgs info) { if (info.Button.Tag != null && info.Button.Tag.ToString() == "Custom") { var look = new UserLookAndFeel(viewInfo.OwnerEdit); look.SkinName = look.ActiveSkinName; look.UseDefaultLookAndFeel = false; look.SkinMaskColor = info.Button.Appearance.BackColor; SkinEditorButtonPainter painter = new SkinEditorButtonPainter(look); painter.DrawObject(info); } else { base.DrawButton(viewInfo, info); } }
private void gridView1_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e) { if (e.Column.FieldName == "ReaderName1" || e.Column.FieldName == "ReaderName2" || e.Column.FieldName == "ReaderName3" || e.Column.FieldName == "ReaderName4" || e.Column.FieldName == "ReaderName5" || e.Column.FieldName == "ReaderName6" || e.Column.FieldName == "ReaderName7" || e.Column.FieldName == "ReaderName8") { ButtonEditViewInfo editInfo = (ButtonEditViewInfo)((DevExpress.XtraGrid.Views.Grid.ViewInfo.GridCellInfo)e.Cell).ViewInfo; editInfo.RightButtons[0].Button.Caption = e.DisplayText; //Debug.WriteLine("Caption: " + e.DisplayText); } }
protected override void DrawButton(ButtonEditViewInfo viewInfo, EditorButtonObjectInfoArgs info) { if (info.Bounds.Width == 0 || viewInfo.RightButtons.Count == 0) { return; } if (info.Button.Index == 1) { base.DrawButton(viewInfo, info); string str_value = viewInfo.EditValue as string; Color captionColor = EditorsSkins.GetSkin(viewInfo.LookAndFeel.ActiveLookAndFeel)[EditorsSkins.SkinEditorButton].Color.GetForeColor(); info.Cache.DrawString(str_value, viewInfo.Appearance.Font, new SolidBrush(captionColor), info.Bounds, info.Appearance.GetStringFormat()); return; } base.DrawButton(viewInfo, info); }
protected override void DrawString(ControlGraphicsInfoArgs info, Rectangle bounds, string text, AppearanceObject appearance) { ButtonEditViewInfo vi = info.ViewInfo as ButtonEditViewInfo; int buttonsWidth = CalcButtonsWidth(info); int text_width = vi.Bounds.Width - buttonsWidth; if (text_width <= 1) { text_width = vi.ClientRect.Width; } bounds = new Rectangle(bounds.X, bounds.Y, text_width, bounds.Height); appearance.DrawString(info.Cache, text, bounds, appearance.GetForeBrush(info.Cache), appearance.GetTextOptions().GetStringFormat(info.ViewInfo.DefaultTextOptions)); }
private void DrawButtons(CustomDrawNodeCellEventArgs e) { ButtonEditViewInfo viewInfo = e.EditViewInfo as ButtonEditViewInfo; if (viewInfo != null) { foreach (EditorButtonObjectInfoArgs args in viewInfo.LeftButtons) { args.Cache = e.Cache; viewInfo.EditorButtonPainter.DrawObject(args); } foreach (EditorButtonObjectInfoArgs args in viewInfo.RightButtons) { args.Cache = e.Cache; viewInfo.EditorButtonPainter.DrawObject(args); } } }
protected override void DrawButton(ButtonEditViewInfo viewInfo, EditorButtonObjectInfoArgs info) { base.DrawButton(viewInfo, info); TagListViewInfo vi = viewInfo as TagListViewInfo; Rectangle closeButtonRect = TagListViewInfo.GetCloseRectangle(info.Bounds); SkinEditorButtonPainter currentButtonPainter = (SkinEditorButtonPainter)viewInfo.GetButtonPainter(info); Skin currentSkin = EditorsSkins.GetSkin(currentButtonPainter.Provider); SkinElement closeButton = currentSkin[EditorsSkins.SkinCloseButton]; CustomSkinElementPainter customSkinElementPainter = new CustomSkinElementPainter(); if (closeButton != null) { SkinElementInfo skinInfo = new SkinElementInfo(EditorsSkins.GetSkin(currentButtonPainter.Provider)[EditorsSkins.SkinCloseButton], closeButtonRect); skinInfo.Cache = info.Cache; skinInfo.State = info.State; customSkinElementPainter.DrawObject(skinInfo); } }
protected override void DrawGlyphCore(ControlGraphicsInfoArgs info, ButtonEditViewInfo be) { ImageEditViewInfo info_ = be as ImageEditViewInfo; Image image = null; if (info_.EditValue is byte[]) { image = new Bitmap(RepositoryItemCustomImageEdit.GetImage(info_.EditValue as byte[]), info_.ImageSize); } else if (info_.EditValue is Image) { image = new Bitmap((Image)info_.EditValue, info_.ImageSize); } if (image == null) { base.DrawGlyphCore(info, be); return; } info.Cache.Paint.DrawImage(info.Graphics, image, be.GlyphBounds); }
private void gridView1_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e) { try { if (e.Column == gridColumnFormName) { string name = gridView1.GetRowCellDisplayText(gridView1.FocusedRowHandle, "FileName"); var formToChoose = (from f in formsList where f.name == name select f).DefaultIfEmpty().First(); if (formToChoose != null) { formToChoose.form.BringToFront(); } } else if (e.Column == gridColumnCommands) { GridViewInfo viewInfo = gridView1.GetViewInfo() as GridViewInfo; GridHitInfo hitInfo = gridView1.CalcHitInfo(e.Location); GridCellInfo cell = viewInfo.GetGridCellInfo(hitInfo); if (cell == null || cell.Column == null || cell.Column.View == null) { return; } Point hitPoint = GetCellPoint(cell, e.Location); ButtonEditViewInfo buttonEditViewInfo = cell.ViewInfo as ButtonEditViewInfo; DevExpress.XtraEditors.Drawing.EditorButtonObjectInfoArgs buttonInfoByPoint = buttonEditViewInfo.ButtonInfoByPoint(hitPoint); if (buttonInfoByPoint != null) { repositoryItemButtonEdit1_ButtonClick(null, new DevExpress.XtraEditors.Controls.ButtonPressedEventArgs(buttonInfoByPoint.Button)); } } } catch (Exception ex) { MessageBox.Show(MiscStuff.GetAllMessages(ex)); } }
private void gridView1_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e) { //for button edit controls, set button's caption if (e.RowHandle > -1) { if (e.Column.FieldName == TempColumnNames.Convert.ToString()) { ButtonEditViewInfo editInfo = (ButtonEditViewInfo)((GridCellInfo)e.Cell).ViewInfo; if (editInfo.RightButtons.Count > 0) { editInfo.RightButtons[0].Button.Caption = _Calculation.GetCalculationRowUnitValue(_Model, gridView1.GetDataSourceRowIndex(e.RowHandle)); } } else if (e.Column.FieldName == TempColumnNames.Currency.ToString()) { ButtonEditViewInfo editInfo = (ButtonEditViewInfo)((GridCellInfo)e.Cell).ViewInfo; if (editInfo.RightButtons.Count > 0) { editInfo.RightButtons[0].Button.Caption = _Calculation.GetCalculationRowCurrencyValue(_Model, gridView1.GetDataSourceRowIndex(e.RowHandle)); } } } }
protected override void DrawButton(ButtonEditViewInfo viewInfo, EditorButtonObjectInfoArgs info) { base.DrawButton(viewInfo, info); }
private void VoteButtonStatusSetting(DataRow dr, ButtonEditViewInfo buttonVI) { var status = int.Parse(dr[colStatus.FieldName]?.ToString()); var serialNo = dr[colSerialNo.FieldName]?.ToString(); var applyUser = dr[colApplyUser.FieldName]?.ToString(); var myVoteinfo = _myVotes.FirstOrDefault(x => x.FormSerialNo == serialNo && x.UserCode == LoginInfo.CurrentUser.UserCode); //申请单已提交或投票进行中 if (status == (int)EnumLibrary.IDFormStatus.Submited || status == (int)EnumLibrary.IDFormStatus.Proceed) { //当前用户为申请者 if (applyUser == LoginInfo.CurrentUser.UserCode) { foreach (EditorButtonObjectInfoArgs args in buttonVI.RightButtons) { if (args.Button.Tag.ToString() == "View") { args.Button.Enabled = true; args.State = ObjectState.Normal; } else { args.Button.Enabled = false; args.State = ObjectState.Disabled; } } } //当前用户不为申请者 else { //查看按钮 buttonVI.RightButtons[4].Button.Enabled = true; buttonVI.RightButtons[4].State = ObjectState.Normal; //未投票 if (myVoteinfo == null || myVoteinfo.Flag == (int)EnumLibrary.IDVoteFlag.None) { buttonVI.RightButtons[0].Button.Enabled = true; buttonVI.RightButtons[0].State = ObjectState.Normal; buttonVI.RightButtons[1].Button.Enabled = true; buttonVI.RightButtons[1].State = ObjectState.Normal; buttonVI.RightButtons[2].Button.Enabled = true; buttonVI.RightButtons[2].State = ObjectState.Normal; buttonVI.RightButtons[3].Button.Enabled = false; buttonVI.RightButtons[3].State = ObjectState.Disabled; ////查看按钮 //buttonVI.RightButtons[4].Button.Enabled = false; //buttonVI.RightButtons[4].State = ObjectState.Disabled; } //已投票 else { buttonVI.RightButtons[0].Button.Enabled = false; buttonVI.RightButtons[0].State = ObjectState.Disabled; buttonVI.RightButtons[1].Button.Enabled = false; buttonVI.RightButtons[1].State = ObjectState.Disabled; buttonVI.RightButtons[2].Button.Enabled = false; buttonVI.RightButtons[2].State = ObjectState.Disabled; //撤销按钮 buttonVI.RightButtons[3].Button.Enabled = true; buttonVI.RightButtons[3].State = ObjectState.Normal; ////查看按钮 //buttonVI.RightButtons[4].Button.Enabled = true; //buttonVI.RightButtons[4].State = ObjectState.Normal; //bool canRevoke = true; //if (_commonService.GetCurrentServerTime() - myVoteinfo.VoteTime > new TimeSpan(0, 5, 0)) // canRevoke = false; //if (canRevoke) //{ // //撤销按钮 // buttonVI.RightButtons[3].Button.Enabled = true; // buttonVI.RightButtons[3].State = ObjectState.Normal; // //查看按钮 // buttonVI.RightButtons[4].Button.Enabled = false; // buttonVI.RightButtons[4].State = ObjectState.Disabled; //} //else //{ // //撤销按钮 // buttonVI.RightButtons[3].Button.Enabled = false; // buttonVI.RightButtons[3].State = ObjectState.Disabled; // //查看按钮 // buttonVI.RightButtons[4].Button.Enabled = true; // buttonVI.RightButtons[4].State = ObjectState.Normal; //} } } } //申请单投票完成 else if (status == (int)EnumLibrary.IDFormStatus.Denied || status == (int)EnumLibrary.IDFormStatus.Passed) { buttonVI.RightButtons[0].Button.Enabled = false; buttonVI.RightButtons[0].State = ObjectState.Disabled; buttonVI.RightButtons[1].Button.Enabled = false; buttonVI.RightButtons[1].State = ObjectState.Disabled; buttonVI.RightButtons[2].Button.Enabled = false; buttonVI.RightButtons[2].State = ObjectState.Disabled; buttonVI.RightButtons[3].Button.Enabled = false; buttonVI.RightButtons[3].State = ObjectState.Disabled; buttonVI.RightButtons[4].Button.Enabled = true; buttonVI.RightButtons[4].State = ObjectState.Normal; } }
protected override void DrawButton(ButtonEditViewInfo viewInfo, EditorButtonObjectInfoArgs info) { info.State = (viewInfo.Item as RepositoryItemMyButtonEdit).IsButtonChecked(viewInfo.EditValue, info.Button.Index) ? ObjectState.Hot : ObjectState.Normal; base.DrawButton(viewInfo, info); }