如何临时存储物品清单?

时间:2016-04-14 13:05:28

标签: c# asp.net c#-4.0 listbox

我正在尝试存储项目列表,即从文本框中的下拉列表和文本中选择的值,然后使用列表框上的foreach循环将它们逐个添加到数据库中。

按钮后面的代码添加事件:

ListBox ListBoxFeatures = new ListBox();
ListBoxFeatures.Items.Add(new ListItem(txtBoxDescription.Text, ddlFeatures.SelectedValue));

然后我在它上面使用了一个foreach循环来获取所有存储的值并存储在数据库中,但它总是选择1行,这意味着我只存储了1行。

foreach(ListItem li in ListBoxFeatures.Items)
{
      String txt= li.Text;
      Int Value= li.SelectedValue.ToInt32();

      //database logic i.e. InsertMethod
}

2 个答案:

答案 0 :(得分:1)

您的问题是您在每个点击事件中创建一个新的列表框。您需要在按钮单击之外移动初始化。假设在单击按钮之前ListBoxFeatures已经存在,您可以从单击方法中删除ListBox ListBoxFeatures = new ListBox();的整行。

答案 1 :(得分:0)

不应该是:

foreach(ListItem li in ListBoxFeatures.Items)
{ ... }

<强>更新

此外,按钮事件始终会创建一个新的列表框,然后向其中插入1个值...为什么您会有多个值?