让 Infragistics Ultragrid 看起来 "Disabled"

Make Infragistics Ultragrid look "Disabled"

我有一个遗留的 .NET WinForms 应用程序需要修改。我们正在使用 Infragistics UltraGrid 来显示一些信息。新要求是网格在某些情况下必须是“只读”的。为此,我已成功设置 grdMain.DisplayLayout.Override.AllowUpdategrdMain.DisplayLayout.Override.AllowDeletegrdMain.DisplayLayout.Override.AllowAddNew 属性,使网格为“只读”。但现在我需要更改网格的外观,使其看起来已禁用。这就是我的麻烦所在。我希望能够在启用和禁用之间切换网格的单元格文本和单元格背景颜色等。

NOTE: I tried actually disabling the grid with grdMain.Enabled but when the grid is disabled, users cannot do "anything" with it like resize columns or highlight & copy text. So that was a bust.

我想我可以强制执行此操作并迭代条带和列或行并手动设置颜色,但在我看来 Infragistics 应该有这样的事情并且应该有一种更优雅的方式来处理它.如果您能提供任何信息,我们将不胜感激。

您需要为网格中的每一行、每一列或每个单元格设置 Activation 才能禁用它。请记住,如果您这样做,用户将无法 select 单元格,也无法访问单元格的文本。单元格将被禁用 - 不允许突出显示或复制文本。

您可以采用的其他方法是设置单元格的外观。要一次设置所有单元格的外观,您可以像这样使用 Override 对象的 CellAppearance:

ultraGrid.DisplayLayout.Override.CellAppearance.BackColor = Color.LightGray;