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。リストではなくnullである可能性がありますpersonal。コードを次のように置き換えてみてください。

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

それでも例外が発生するかどうかを確認します。

ComboboxのプロパティにアクセスしていTextますが、代わりに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 に答える