Я перекрыл методы Enter на гридах - заголовке и строках.
Для SalesLineGrid
X++:
public void enter()
{
SalesLineGrid.activeBackColor(WindowsPalette::HighlightBackground);
GridHeader.activeBackColor(WindowsPalette::InactiveTitleBar);
super();
}
Для GridHeader
X++:
public void enter()
{
SalesLineGrid.activeBackColor(WindowsPalette::InactiveTitleBar);
GridHeader.activeBackColor(WindowsPalette::HighlightBackground);
super();
}
Это при условии, что в свойствах этих гридов ColorScheme = default или Windows Palette. При схеме RGB, видимо, в аргументах надо будет выбирать WinApi::RGB2int и соотношение красного зеленого голубого.
Можно было перекрыть метод получения (или потери) фокуса. Но он сработает только, если нажал в гриде на поле, разрешенное к редактированию.
Субъективно - показалось, что форма стала сильно тормозить. Но, возможно, что это просто тестовая база, у которой мало оперативки для кэша.
ЗЫ: Дочитал вопрос - ничего дополнительного для прорисовки не использовал.