Я работаю над приложением Window CE с пользовательским управлением.
В пользовательском элементе управления я рисую три круга (один заполненный круг), одну стрелку, один текст и одну линию вручную. Это как селектор угла в фотошопе.
Теперь, когда я перемещаю курсор, завершаю перерисовку элемента управления и вызываю мерцающий эффект.
Я пробовал рисовать элементы управления сначала в растровом изображении, а затем в последнем рисовании этого растрового изображения, используя метод e.drawimage (), но та же проблема мерцания.
Теперь у меня есть только 2 фигуры (стрелка + линия), которые необходимо перерисовать, другие со статическим поведением .
Так что мой вопрос, есть ли способ выборочного рисования фигур, сохраняя другие нетронутыми. Сначала нарисуйте все фигуры, но затем нарисуйте стрелку и линию, оставив все остальные фигуры в этом месте нетронутыми.
Это то, что я делаю в
метод переопределения onPiant.
using (SolidBrush inLineFill = new SolidBrush(circleColor))
{
Point[] polyPoints = ...;
e.Graphics.DrawLine(....);
e.Graphics.FillPolygon(inLineFill, polyPoints);
if (firstTime)
{
e.Graphics.DrawEllipse(...);
e.Graphics.DrawEllipse(...);
e.Graphics.DrawEllipse(...);
e.Graphics.FillEllipse(...);
e.Graphics.DrawString(...);
firstTime = false ;
}
}
Я впервые вижу полный контроль, но после этого вижу только стрелку с линией.