public class MyClass : Form
{
private Panel panel = new Panel();
public MyClass
{
panel.Parent = this;
panel.Paint += new PaintEventHandler(panel_Paint);
}
void panel_Paint(object sender, PaintEventArgs e)
{
...
}
}
Переопределение события
Есть такая проблема. Создаю класс типа Form. Кидаю туда Panel.
Код:
В основном приложении создаю объект типа MyClass и определяю ему событие Paint
Код:
public partial class Form1 : Form
{
MyClass myClass = new MyClass();
public Form1()
{
InitializeComponent();
myClass.Paint += new PaintEventHandler(myClass_Paint);
myClass.Show();
}
void myClass_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawString("Hello", new Font("Arial", 20, FontStyle.Bold), Brushes.Red, 0, 0);
}
{
MyClass myClass = new MyClass();
public Form1()
{
InitializeComponent();
myClass.Paint += new PaintEventHandler(myClass_Paint);
myClass.Show();
}
void myClass_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawString("Hello", new Font("Arial", 20, FontStyle.Bold), Brushes.Red, 0, 0);
}
Теперь сама проблема. Мне нужно, чтобы строка Hello рисовалась не на форме, а на панели. Т.е. надо так переопределить событие MyClass.Paint, чтобы реально оно происходило не для формы, а для панели.
Заранее благодарю