Проблема с элементами управления и графикой PowerPack при очистке и перерисовке
Чтобы кратко объяснить:
- У меня есть форма победы, написанная на C#, которая содержит панель.
- Панель содержит контейнер формы, благодаря которому я программно добавил некоторые овальные и линейные элементы управления формы из VisualBasic.PowerPacks на панель.
- Причиной использования таких фигур было то, что мне нужно было выполнить некоторые операции с их событиями MouseHover и MouseClick.
- Я также нарисовал некоторые графические элементы, такие как строки и эллипсы, на панели с помощью метода Графика в Paint(отправитель объекта, PaintEventArgs e) панели.
- В приложении есть кнопки увеличения и уменьшения масштаба, и каждый раз, когда пользователь нажимает на них, размер фигур и графики должен изменяться в зависимости от масштаба.
- Чтобы перерисовать графику после масштабирования, мне нужно было очистить старые, прежде чем рисовать новые графики в новом масштабе, иначе они остались на панели. Для этого я использовал метод Clear(Color color) для графики.
Теперь у меня проблема с использованием Clear(Color color), все, включая элементы управления формой, исчезло. По моему восприятию, я не ожидаю, что формы исчезнут, потому что они должны рассматриваться как элементы управления, если я не пропускаю что-то здесь. Как я могу избежать этой проблемы? Любой совет будет принят во внимание.
1 ответ
Решение
Решил проблему, аннулировав элементы управления shape.Invalidate().