Сделать Infragistics Ultragrid отключенным

У меня есть устаревшее приложение .NET WinForms, которое нуждается в модификации. Мы используем Infragistics UltraGrid для отображения некоторой информации. Новое требование заключается в том, что при определенных обстоятельствах сетка должна быть доступна только для чтения. С этой целью я успешно установил свойства grdMain.DisplayLayout.Override.AllowUpdate, grdMain.DisplayLayout.Override.AllowDelete и grdMain.DisplayLayout.Override.AllowAddNew, чтобы сетка была доступна только для чтения. Но теперь мне нужно изменить внешний вид сетки, чтобы она выглядела отключенной. И в этом моя беда. Я хочу иметь возможность переключать текст ячейки сетки, цвет фона ячейки и т. Д. Между включенным и отключенным просмотром.

ПРИМЕЧАНИЕ. Я попытался отключить сетку с помощью grdMain.Enabled, но когда сетка отключена, пользователи не могут ничего с ней делать, например изменять размер столбцов или выделять и копировать текст. Так что это был бюст.

Я думаю, что я мог бы перебрать это и перебрать полосы, столбцы или строки и вручную установить цвета, но мне кажется, что Infragistics подумал бы о чем-то подобном, и должен быть более изящный способ сделать это. Любая информация, которую вы можете предоставить, будет оценена по достоинству.


person DeadZone    schedule 22.05.2020    source источник


Ответы (1)


Вам необходимо установить активацию либо каждую строку, каждый столбец или каждую ячейку в сетке, чтобы отключить его. Имейте в виду, что если вы сделаете это, пользователи не смогут выбирать ячейки или текст ячеек. Ячейки будут отключены - нельзя будет выделить или скопировать текст.

Другой подход, который вы можете использовать, - установить внешний вид ячеек. Чтобы установить внешний вид сразу для всех ячеек, вы можете использовать CellAppearance объекта Override следующим образом:

ultraGrid.DisplayLayout.Override.CellAppearance.BackColor = Color.LightGray;
person wnvko    schedule 23.05.2020
comment
Спасибо, это было. На самом деле, я пробовал это, изначально. Моя настоящая проблема заключалась в том, что некоторый код скрывался там, где его быть не должно (плохое объектно-ориентированное кодирование), который устанавливал настройки BackColor для отдельных столбцов. И настройки столбца переопределяли настройки сетки. - person DeadZone; 26.05.2020