C# 在WinForms中,如何在DevXPress GridControl中创建删除按钮?
我正在尝试在DevExpress GridControl中每行的右侧创建一个删除按钮,如下所示: 我所做的是添加另一列,并将其ColumnEdit属性设置为RepositoryItemButtonEdit的实例。我处理ButtonClick事件,删除一行 我可以通过以下代码确定我所在的行:C# 在WinForms中,如何在DevXPress GridControl中创建删除按钮?,c#,.net,winforms,devexpress,C#,.net,Winforms,Devexpress,我正在尝试在DevExpress GridControl中每行的右侧创建一个删除按钮,如下所示: 我所做的是添加另一列,并将其ColumnEdit属性设置为RepositoryItemButtonEdit的实例。我处理ButtonClick事件,删除一行 我可以通过以下代码确定我所在的行: myGridView.GetRow(myGridView.FocusedRowHandle); 因为我不希望按钮上有文本编辑器,所以我将TextEditStyle设置为HideTextEditor 默认情
myGridView.GetRow(myGridView.FocusedRowHandle);
因为我不希望按钮上有文本编辑器,所以我将TextEditStyle设置为HideTextEditor
默认情况下,该按钮显示省略号
为了删除省略号,我调整了RepositoryItemButtonEdit上的Buttons属性。我将种类设置为Glyph,并将图像设置为我的X图标
不幸的是,这似乎只是完全删除了按钮
有谁知道更好的方法,或者在每个网格行中显示带有图像的按钮吗?我发现实际上有一种删除按钮。所以,我做了问题中提到的所有事情,但是我没有选择种类标志符号,而是选择了删除,我不需要选择图像。我总结了我在: 使用
按钮dit
控件并将TextEditStyle
属性设置为HideTextEditor
。存储库项有一个按钮
集合,您可以通过该集合添加标题、图像等
在按钮
集合中,将“种类”属性更改为“Glyph”。
您可以使用CustomRowCellEdit
事件逐个单元格有条件地应用编辑器。
确保将按钮的种类
属性设置为“Glyph”,并将标题
属性设置为所需的任何文本:
DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit buttonEdit =
new DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit();
buttonEdit.Buttons[0].Kind = DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph;
buttonEdit.Buttons[0].Caption = "X";
buttonEdit.TextEditStyle =
DevExpress.XtraEditors.Controls.TextEditStyles.HideTextEditor;
e.RepositoryItem = buttonEdit;
您应该处理GridView的CustomRowCellEdit
事件,构造一个新的RepositoryItemButtonEdit
,并将其分配给e.RepositoryItem属性
如果有效,请告诉我。是的,有效。谢谢你,我已经把你的答案标记为有用。几点意见:1。只需将代码封装在if(e.Column==[DeleteColumnName]){…}中,否则它会将所有列转换为按钮。2.我更喜欢我的答案(使用Delete类而不是Glyph),因为我认为使用内置的X比键入“X”更整洁。我还没有弄清楚如何为X使用自定义图像,但这并不重要。对于这样一个简单的任务,DevXPress是一团混乱。。。