nesco писал(а):
Добавь вот это в код и проверь:
Правка помогла, рисует правильно.
nesco писал(а):
Так же нельзя. При нажатии на пустую область выдается индекс строки = -1, тк мышь не попадет в область строки, и выделение автоматически сбрасывается. Можно попытаться сохранить индекс выбранной строки и при получении индекса = -1 вернуть селектор на старую позицию. Но это надо экспериментировать.
Пытаюсь это реализовать, но пока глухо. Смотрел в сторону _OnSelState, но тут все печально. При выделении другого пункта срабатывает три события: oldState = 0 NewState = 0(старая строка еще выделена), oldState = 2 NewState = 0(снимается выделение с старой строки) и oldState = 0 NewState = 3 (выделена новая строка).
А как нажать на пустое место, так только одно событие: oldState = 2 NewState = 0 (выделение с старой строки уже снято). Вот чего оно так не логично

Буду пробовать другие варианты. Если есть идея где покапать, то сообщи, попробую.
nesco писал(а):
Вопрос 1: Нет, нельзя. Системный класс такого не предусматривает.
Мне нужно только шрифт строки сохранить при выделенной строке и не хочется использовать для этого MST_DrawManager чтоб не сильно нагружать перерисовку (на старом компьютере особо заметно). Но думаю на элементах собрать что-то попроще.