На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> UserControl и его перерисовка
    У меня есть класс отнаследованный от UserControl:

    /*C#*/
    public class MyClass : System.Windows.Forms.UserControl
    {
       /*создаётся IDE*/
       private void InitializeComponent()
       {
          ...
          this.Paint += new System.Windows.Forms.PaintEventHandler(this.MyClass_Paint);
          ...
       }
       private void MyClass_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
       {
           Graphics g = e.Graphics;
           g.DrawRectangle(new Pen(Color.FromArgb(0, 0, 0), 3), 0, 0, this.Width, this.Height);
       }
    }

    Этот контрол добавляется на форму тоже при помощи IDE.

    Проблема в том, что прорисовки не происходит. Я ставил breakpoint в методе MyClass.MyClass_Paint - до туда так ни разу не дошло. Подскажите, что я делаю не так.
    Сообщение отредактировано: Lector -
      IMHO проще сделать override OnPaint(...).

      Вообще зачем делать UserControl со своей перерисовкой, может проще унаследоваться от Control? Или нужен композитный контрол с частичной отрисовкой?
        thnx, так всё работает.
        Почему не работало, как я до этого сделал?
          Не знаю, всегда делал так как сказал
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0180 ]   [ 16 queries used ]   [ Generated: 28.04.24, 10:49 GMT ]