Здравствуйте,
Есть код:
=========================================
public class MyClass : PictureBox
{
private void OnPaint(object sender, PaintEventArgs e)
{
Font font = new Font(FontFamily.GenericSansSerif, EXITS_SIZE);
Font fontBold = new Font(FontFamily.GenericSansSerif, EXITS_SIZE, FontStyle.Bold);
// немного кода убрано
..................................
if (someCondition)
{
g.DrawString(someString, fontBold, someBrush, x, y);
}
else
{
g.DrawString(someString, font, someBrush, x, y);
}
}
}
=========================================
При создании этого контрола всё отрисовывается нормально, кроме строк — они отрисовываются почти всегда обычным шрифтом.
Перерисовка жирным происходит только после скрытия окна, либо перетаскивани контрола за пределы окна.
Чувствую, что проблема где-то в недопонимании когда же мой OnPaint вызывается, но где именно понять не могу. Если бы всё не отрисовывалось (либо рисовалось бы только при вышеописанных условиях) я бы понял. Однако отрисовывается всё кроме тех строчек, что должны быть отрисованы жирным шрифтом.