0

我正在为 Windows 应用程序使用 devexpress。我有一个填充数据的 devxgrid,在最后一列,我有一个名为取消的超链接按钮。当我单击取消按钮时,它会执行一些效果很好的功能。之后,应禁用相应的取消按钮。如何使其禁用?任何帮助是极大的赞赏。

4

1 回答 1

1

有两种方法可以实现此任务:

  1. 创建两个 ButtonEdit 存储库项。一个带有启用按钮,另一个带有禁用按钮。然后处理GridView.CustomRowCellEdit事件并e.RepositoryItem根据特定条件将必要的存储库项传递给参数。有关其他信息,请参阅为单个单元格分配编辑器帮助主题。

  2. 如果按钮编辑器有多个按钮并且它们的Enabled状态必须动态更改,您可以通过处理GridView.CustomDrawCell事件来实现此功能,如以下 DevExpress 论坛线程所示:

    如何在 ButtonEdit 列中显示特定单元格的禁用按钮

但是您应该遵循第一种方法,在hyperlinkEdit的情况下,为您的实现逻辑添加一个带有 bool 值的自定义列,这将为您提供条件,即您将显示启用还是禁用 hyperlinkEdit 存储库编辑。

如果您只想将此设置为只读,那么您可以按以下方式进行操作:

您可以通过处理使编辑器只读CustomRowCellEdit

private void gridView1_CustomRowCellEdit(object sender, CustomRowCellEditEventArgs e)
{
    if(code goes here)
        e.RepositoryItem.ReadOnly = true;
}

您还可以通过处理来防止显示编辑器ShowingEditor

private void gridView1_ShowingEditor(object sender, CancelEventArgs e)
{
    if (code goes here)
        e.Cancel = true;
}

希望这可以帮助您解决您的任务..

于 2012-05-16T14:54:56.593 回答