【发布时间】:2021-04-30 03:47:03
【问题描述】:
请帮我解决 Devexpress 的问题。
How do I dynamically modify button caption within a datagridview?
例如:在“总销售额”列中,如果值低于 100,则按钮必须具有标题“低值”,现在如果值高于 101,则按钮必须显示“高于值”
说到这里,请帮帮我,谢谢
private void bandedGridView1_CustomRowCellEdit(object sender, DevExpress.XtraGrid.Views.Grid.CustomRowCellEditEventArgs e)
{
if (e.Column.Caption == "bandedGridColumn1")
{
int val = Convert.ToInt32(bandedGridView1.GetRowCellValue(e.RowHandle, "VAGAS"));
RepositoryItemButtonEdit ritem = new RepositoryItemButtonEdit();
if (val == 20)
{
ritem.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.HideTextEditor;
ritem.Buttons[0].Caption = "Gerar Sorteio";
ritem.Buttons[0].Visible = false;
e.RepositoryItem = ritem;
}
}
}
【问题讨论】:
-
您的解决方案对我来说是正确的。 CustomRowCellEdit 事件是将就地编辑器动态分配给单个行单元格的正确位置。您面临的问题是什么?为什么要将 RepositoryItemButtonEdit 的按钮可见性设置为 false?
-
非常感谢您的帮助。我只是想根据获得的每一行的值来改变按钮的标题,我做不到。关于隐藏的问题,那只是我正在做的一个测试。你知道如何根据每一行的值改变按钮名称吗?
-
这里是打印窗口表单i.stack.imgur.com/vHntx.jpg
标签: c# winforms datagridview devexpress datagridviewcolumn