C# 将绘制事件称为其他形式

C# 将绘制事件称为其他形式,c#,graphic,C#,Graphic,我想从另一个窗体调用绘画事件 这是我的表格一 public void Draw(int a,int b) { Graphics gr = this.CreateGraphics(); Pen p = new Pen(Color.Black,2); gr.DrawLine(p, new Point(a, b), new Point(b, a)); } 当我想用这个代码调用表单2中的Draw事件时 Form2 f = new Form

我想从另一个窗体调用绘画事件 这是我的表格一

public void Draw(int a,int b)
    {
        Graphics gr = this.CreateGraphics();
        Pen p = new Pen(Color.Black,2);
        gr.DrawLine(p, new Point(a, b), new Point(b, a));
    }
当我想用这个代码调用表单2中的Draw事件时

Form2 f = new Form2();
        f.Draw(20,40);
        f.Show();
但它不起作用 如何从其他窗体调用draw事件?
谢谢你

撇开最佳实践不谈,我认为你眼前的问题可能是因为f.show是在f.Draw之后出现的。你真的不想这样做。您希望通过事件和其他机制在论坛之间进行通信,以最小的耦合传递数据,并让表单处理自己的绘制。