Properties.Settings.Default.myList.Add(item)不添加我的项目

时间:2019-06-29 13:09:31

标签: c#

我想将listBox的项目添加到Properties.Settings.Default中的列表中,但是它根本不起作用。我使用从Microsoft.VisualBasic库添加的消息框将项目添加到listBox中,然后将输入添加到listBox中:

private void Button_additem_Click(object sender, EventArgs e)
{
    string itemname = Interaction.InputBox("Item hinzufügen", "Gib unten den Namen des Items ein.", "");
    if (itemname.Length > 0)
    {
        listbox_items.Items.Add(itemname);
    }
    else { }
    Save();
    Restore();
}

之后,我将使用Save()和Restore()无效:

private void Save()
{
    if (Properties.Settings.Default.myList == null)
    { }
    else 
    { 
        Properties.Settings.Default.myList.Clear(); 
    }

    foreach (object item in listbox_items.Items)
    {
        Properties.Settings.Default.myList.Add(item);
    }

    Properties.Settings.Default.Save();
}

private void Restore()
{
    combobox_montag.Items.Clear();
    combobox_dienstag.Items.Clear();
    combobox_mittwoch.Items.Clear();
    combobox_donnerstag.Items.Clear();
    combobox_freitag.Items.Clear();
    combobox_samstag.Items.Clear();
    combobox_sonntag.Items.Clear();
    listbox_items.Items.Clear();

    foreach (object item in Properties.Settings.Default.myList)
    {
        combobox_montag.Items.Add(item);
        combobox_dienstag.Items.Add(item);
        combobox_mittwoch.Items.Add(item);
        combobox_donnerstag.Items.Add(item);
        combobox_freitag.Items.Add(item);
        combobox_samstag.Items.Add(item);
        combobox_sonntag.Items.Add(item);
        listbox_items.Items.Add(item);
    }
}

错误在这里带有'System.NullReferenceException''Planer.Properties.Settings.myList.get返回空值。':

foreach (object item in listbox_items.Items)
{
    Properties.Settings.Default.myList.Add(item);  <---------
}

1 个答案:

答案 0 :(得分:0)

有一部分代码可使此列表为空

<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFramework" version="2.2.2" />

if 无效,如果列表为null,则无法添加项目,为null,则不添加 等同于空null意味着没有意义,您将需要创建一个新的视图,因为您只将 else 中的列表都保留下来,所以:

<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="2.2.0" />