Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > XtraGrid Detail View изменение фона ячейки


Автор: Papirus 22.12.2010, 17:13
У меня DevExpress v8.2
Задача стоит такая:
В гриде мастер (MainView - vwTovar) содержит данные, а один из Detail View (vwLog) - лог изменений. Таблица лога - фактически точная копия по структуре основной таблицы. Триггер на Update закидывает туда целиком предыдущую версию строки. Надо вывести архив изменений и отметить каким-то образом те поля, значения в которых не равны актуальным. Связь таблиц - один-ко-многим по ID. Я соединил таблицы в датасете и добавил в грид соответствующую View (vwLog). Отлавливаю событие vwLog.DataSourceChanged, когда юзер щелкает по соответствующему плюсу, против нужной строки в главной таблице и соответствующую вкладку. Остается мелочь - сравнить построчно строки из лога с актуальной строкой и закрасить те ячейки, где значения не совпадают.
Перекопал весь инет и документацию - не смог подобраться к ячейкам, не к значениям GetRowCellValue, а к самим ячейкам. 
Прикольно, что функции:
-  vwLog.DataRowCount  и vwLog.RowCount выдают нули, когда я ясно вижу на экране несколько строк.
- vwTovar.DetailVisibleView и  vwTovar.DetailView также дружно вываливают на ошибку "Объект не определен..."
Получается, что нужно сначала прочесать строки, которых как бы нет, добраться до ячеек и изменить их формат в зависимости от значения.
Кто-нибудь сталкивался с подобным?

Автор: Papirus 24.12.2010, 12:35
Решение нашел. Если кому интересно - могу написать.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)