即使我创建了类的实例,类中的列表也为null

时间:2013-02-08 12:14:24

标签: c# winforms

我试图从主程序中的某些功能访问列表personal,但我一直认为它不是...的实例

班级代码:

[Serializable()]
class FaktNr
{
    public int lopnummer;
    public int year;

    public List<string> personal = new List<string>();

    public FaktNr()
    {
        personal = new List<string>();

    }
}

表单代码:

public partial class Form1 : Form
{

    internal FaktNr faktNr = new FaktNr(); 

    public Form1()
    {
        InitializeComponent();
    }

    private void laggTillPerson_Click(object sender, EventArgs e)
    {
            faktNr.personal.Add(ComboBox1.Text);
    }

此处缩短了代码,但它显示了基本要素。 Nullreferenceexception发生在函数laggTillPerson_Click中。

我想补充一点,因为我已经尝试过这个问题而不是ComboBox问题:  faktNr.personal.Add(&#34; uhiouh&#34);

1 个答案:

答案 0 :(得分:1)

您在ComboBox1.Text上收到例外,您的ComboBox1可能为空,而不是您的列表personal,请尝试使用以下代码替换您的代码:

faktNr.personal.Add("test string");

并查看您是否仍然获得例外。

您正在访问Combobox的Text属性,而您可以使用ComboBox.SelectedText Property

或者您可以在活动中检查空格:

private void laggTillPerson_Click(object sender, EventArgs e)
{
     if(ComboBox1 != null)
          faktNr.personal.Add(ComboBox1.Text);
}