ObjectDisposedException:无法访问已处置的对象

ObjectDisposedException: Cannot access a disposed object

我正在尝试为我在学校的项目创建一个程序,但遇到了一个问题。我正在使用 LinqPad premium,当我启动该程序时它开始正常。但是,当我第二次或第三次尝试启动它时,它会抛出异常: "ObjectDisposedException: Cannot access a disposed object." "Object name: 'Form'."

这是我的代码:

void Main()
{
    MenuClass.Main();
}
class MenuClass
{
    static public Form MenuWindow = new Form();
    static public void Main()
    {
        MenuWindow.Height = 300;
        MenuWindow.Width = 300;
        MenuWindow.Text = "Menu";

        Button btnPlay = new Button();
        btnPlay.Left = 10;
        btnPlay.Top = 290;
        btnPlay.Text = "Reset";
        //btnPlay.Click += btnReset_click;

        Button btnTakeTurn = new Button();
        btnTakeTurn.Left = 10;
        btnTakeTurn.Top = 270;
        btnTakeTurn.Text = "Take Turn";
        //btnTakeTurn.Click += btnTakeTurn_click;

        Graphics g = MenuWindow.CreateGraphics();

        MenuWindow.Controls.Add(btnPlay);
        MenuWindow.Controls.Add(btnTakeTurn);

        //MenuWindow.Paint += f_Paint;

        MenuWindow.Show();
    }
}

错误发生在 "Graphics g = MenuWindow.CreateGraphics();" 而且当我把它拿出来时它会在 "MenuWindow.Show();"

上执行

求助,我无能为力

变化:

static public Form MenuWindow = new Form();
static public void Main()
{

至:

static public void Main()
{
    var MenuWindow = new Form();

确保每次调用都会生成一个新表单。