我正在尝试为我在学校的项目创建一个程序,我遇到了一个问题。我正在使用LinqPad premium,当我启动程序时,它开始正常。但是,当我尝试第二次或第三次启动时,它会抛出异常: “ObjectDisposedException:无法访问已处置的对象。” “对象名称:'表单'。”
这是我的代码:
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();”
上完成请帮助,因为在这种情况下我无能为力。
答案 0 :(得分:0)
变化:
static public Form MenuWindow = new Form();
static public void Main()
{
为:
static public void Main()
{
var MenuWindow = new Form();
确保每次调用都生成一个新表单。