不应该在load事件中绘图,而是在picturebox1的paint事件中绘图。
窗体a的代码:
private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2(textBox1.Text);
frm2.Show();
}
窗体的b的构造函数要重写,因为带参数。
窗体b的代码:
public partial class Form2 : Form
{
string strDraw;
public Form2()
{
InitializeComponent();
}
public Form2(string str):this()
{
strDraw = str;
}
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
Font font = new Font("宋体", 18);
Graphics g = e.Graphics;
g.DrawString(strDraw, font, Brushes.Black, 20, 20);
}
这样试试,form2定义一个字符串str;
Form2 frm=new Form2();
frm.str=textBox1.Text;
frm.Show();
DrawImage()放到Form2_OnPaint事件中执行。