2013-01-19 68 views
2

我正在尝试创建一个multiWindowsForm多个表单不显示

只是尝试它是如何工作的,我开始使用一个简单的表单,我添加了一个按钮。点击它时,会弹出另一个窗口。但我无法让它工作。它与错误崩溃:

Object reference not set to an instance of an object! 

我用项目添加Windows窗体并把它命名为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(); 
     } 
    } 
} 

我能错过了吗?

+2

发布您的Mupp类的代码。另外,它会在'theMupp.Show()'或Mupp类本身的某个地方崩溃吗? –

+0

当你新增你的Mupp类时,你可能会遇到问题。我们需要看代码。 –

+0

我没有用Mupp.cs代码编辑帖子。谢谢!〜 –

回答

4

它看起来像加载事件不会触发,因此不能初始化您的对象。确保加载事件已连接。

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

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

我希望这有助于。

2
public tryout() 
{ 
     InitializeComponent(); 
     this.Load += new EventHandler(Form1_Load); 
}