2

我正在尝试制作一个multiWindowsForm.

为了尝试它是如何工作的,我从一个添加了按钮的简单表单开始。单击它时,应该会弹出另一个窗口。但我无法让它工作。它因错误而崩溃:

Object reference not set to an instance of an object!

我用ProjectAddWindows form并命名它Mupp.cs

这是我的代码Form1.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace MultiForm
{
    public partial class tryout : Form
    {
        public tryout()
        {
            InitializeComponent();
        }

        Mupp theMupp;

        private void Form1_Load(object sender, EventArgs e)
        {
            theMupp = new Mupp();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            theMupp.Show();
        }
    }
}

我错过了什么?

4

2 回答 2

4

看起来加载事件没有触发,因此没有初始化您的对象。确保加载事件已连接。

或者,在单击事件中进行初始化。

 private void button1_Click(object sender, EventArgs e)
 {
     using (Mupp theMupp = new Mupp())
     {
         theMupp.ShowDialog();
     }
 }

我希望这有帮助。

于 2013-01-19T17:31:28.730 回答
2
public tryout()
{
      InitializeComponent();
      this.Load += new EventHandler(Form1_Load);
}
于 2013-01-19T17:33:52.987 回答