C # определенно не моя сильная сторона, поэтому я ценю всех щедрых людей, которые делятся своими знаниями Я работаю с формой Windows и прочитал о событиях и нашел отличную справку о том, как изменить TabControl, чтобы у меня было событие OnDraw, которое добавит некоторую окраску к вкладкам.
Цвет каждой вкладки зависит от состояния переменной соединения:
Текущий (зеленый)
Потерянный (красный)
Несвежий (желтый)
Событие OnDraw отлично работает для обновления цвета каждой вкладки, но это происходит только тогда, когда пользователь выбирает другую вкладку для просмотра.
Я бы хотел, чтобы цвет каждой вкладки обновлялся при изменении состояния соединения. Например, скажем, вкладка № 1 окрашена в зеленый цвет, но затем состояние соединения меняется на устаревшее, поэтому теперь вкладка должна быть окрашена в желтый цвет, но она не будет окрашиваться в такой цвет, пока пользователь не нажмет на другую вкладку и событие OnDraw срабатывает.
Так что я пытаюсь понять, как это сделать. Когда событие OnDraw запускается нормально (пользователь нажимает на другую вкладку), параметр «DrawItemEventArgs» передается в четный обработчик. Эта переменная уже заполнена соответствующими данными, необходимыми для выяснения, на какой вкладке щелкнули, границ этой вкладки и т. Д. Поэтому я не уверен, откуда она взялась или как я могу программно воссоздать такой вызов, чтобы перекрасить вкладки при каждом изменении переменной соединения.
Пожалуйста, дайте мне знать, если мне нужно что-то уточнить!
Спасибо.