Вы не собираетесь рисовать правильный путь. Вот некоторые основные сведения о том, как это работает:
http://msdn.microsoft.com/en-us/library/kxys6ytf.aspx
Вы должны иметь код, который выглядит следующим образом:
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
Rectangle = new Rectangle(25 + (32 * PASS_THROUGH), 190, 32, 32);
e.Graphics.DrawRectangle(Pens.Green, Rectangle);
}
Windows, будет вызывать этот метод всякий раз, когда это необходимо перекрашивать окно.
Если вы хотите изменить динамическое раскрашивание, вам нужно добавить логику к этому методу. Такие, как, если заявление, что пишет, if (drawRectangle) ...
Если вы хотите, чтобы сигнализировать свой контроль, чтобы перерисовать себя после изменения переменной, как мой выше примере drawRectangle
, вам просто нужно вызвать метод Control.Invalidate
по контролю в вопросе.
Вы можете управлять множеством различных переменных и объектов, чтобы управлять тем, что окрашено, например, список фигур. В методе рисования вы затем прокручиваете эти фигуры и рисуете их один за другим. Я не уверен, что это то, что вы пытаетесь сделать, или просто хотите настроить внешний вид своей формы, и вам не нужно динамически менять ее.
Вы не рисуете их в ответ на событие WM_PAINT. Вам нужно прикрепить обработчик события к событию 'Control.Paint' или переопределить' OnPaint'. Если вам нужна дополнительная помощь, отправьте код. –
Добавил код, прошу прощения – Evan
@TrevorElliott Опубликовать в качестве ответа, чтобы я мог поддержать вас. – Tarik