1

我正在尝试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("uhiouh");

4

1 回答 1

1

您遇到了异常ComboBox1.Text,您ComboBox1可能为空,而不是您的列表personal,请尝试将您的代码替换为:

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

看看你是否仍然得到异常。

您正在访问TextCombobox 的属性,而不是您可以使用ComboBox.SelectedText 属性

或者您可以在您的活动中检查 null :

private void laggTillPerson_Click(object sender, EventArgs e)
{
     if(ComboBox1 != null)
          faktNr.personal.Add(ComboBox1.Text);
}
于 2013-02-08T12:16:21.997 回答