GridControl代码添加控件
1、效果
private RepositoryItemButtonEdit CreateRepositoryItemButtonEdit(Dictionary<object, string> dicButtons) { RepositoryItemButtonEdit repositoryBtn = new RepositoryItemButtonEdit(); repositoryBtn.AppearanceDisabled.Options.UseTextOptions = true; repositoryBtn.AppearanceDisabled.TextOptions.HAlignment = HorzAlignment.Near; repositoryBtn.AutoHeight = false; repositoryBtn.TextEditStyle = TextEditStyles.HideTextEditor; repositoryBtn.ButtonsStyle = BorderStyles.UltraFlat; repositoryBtn.Buttons.Clear(); EditorButton btn = null; foreach (KeyValuePair<object, string> item in dicButtons) { btn = new EditorButton(); btn.Kind = ButtonPredefines.Glyph; btn.Caption = item.Value; btn.Tag = item.Key; repositoryBtn.Buttons.Add(btn); } return repositoryBtn; }
调用
Dictionary<object, string> dicButtons = new Dictionary<object, string>(); dicButtons.Add("delete", "删除"); dicButtons.Add("download", "下载"); RepositoryItemButtonEdit ribeFile = CreateRepositoryItemButtonEdit(dicButtons); //ribeFile.ButtonClick += ribeFile_ButtonClick; //绑定事件 gcData.RepositoryItems.Add(ribeFile); this.Operate.ColumnEdit = ribeFile;
2、效果
protected virtual RepositoryItemPopupContainerEdit CreateRepositoryItemPopupContainerEdit(string caption) { RepositoryItemPopupContainerEdit repositoryPop = new RepositoryItemPopupContainerEdit(); //repositoryCalc.AutoHeight = false; repositoryPop.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near; return repositoryPop; }
调用
//添加按钮 EditorButton edit = new EditorButton(); edit.Kind = DevExpress.XtraEditors.Controls.ButtonPredefines.Plus; edit.ToolTip = "添加";//提示 edit.Tag = "add"; RepositoryItemPopupContainerEdit ripce = CreateRepositoryItemPopupContainerEdit("标签"); ripce.PopupControl = this.popTags; //popupContainerControl控件 ripce.QueryPopUp += ripce_QueryPopUp; //弹出控制事件 ripce.QueryResultValue += ripce_QueryResultValue; //返回值事件 ripce.Buttons.Add(edit); ripce.ButtonClick += ripce_ButtonClick; //添加按钮事件 gcFile.RepositoryItems.Add(ripce); this.TagName.ColumnEdit = ripce; //TagName是GridView的gridColumn列
3、效果 效果1的另一种方式
RepositoryItemButtonEdit rBtnEdit = new RepositoryItemButtonEdit(); rBtnEdit.Buttons.Clear(); rBtnEdit.TextEditStyle = TextEditStyles.DisableTextEditor; rBtnEdit.ButtonsStyle = BorderStyles.Default; rBtnEdit.Appearance.BackColor = this.ReceivableDate.AppearanceCell.BackColor; rBtnEdit.ButtonClick += rBtnEdit_ButtonClick;//绑定事件 EditorButton btnSet = new EditorButton(); btnSet.Tag = "set"; btnSet.Kind = ButtonPredefines.Glyph; btnSet.ToolTip = "设置延迟日期"; btnSet.Caption = "设置"; rBtnEdit.Buttons.Add(btnSet); gcData.RepositoryItems.Add(rBtnEdit); this.ReceivableDate.ColumnEdit = rBtnEdit;
4、效果
protected virtual RepositoryItemHyperLinkEdit CreateRepositoryItemHyperLinkEdit(string caption) { RepositoryItemHyperLinkEdit link = new RepositoryItemHyperLinkEdit(); link.AutoHeight = false; link.TextEditStyle = TextEditStyles.Standard; link.ReadOnly = true; link.SingleClick = true; return link; }
调用
RepositoryItemHyperLinkEdit linkSalesMoney = CreateRepositoryItemHyperLinkEdit("销售金额"); 2 linkSalesMoney.OpenLink += new OpenLinkEventHandler(linkSalesMoney_OpenLink); //事件 3 this.SalesMoney.ColumnEdit = linkSalesMoney; //绑定
分类:
DevExpress
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构