【问题标题】:How to retain listbox selected items values on multiple clicks?如何在多次单击时保留列表框选定项的值?
【发布时间】:2017-01-23 05:37:36
【问题描述】:
for (int i = 0; i < lboxavilableInsName.Items.Count; i++)
{
    if (lboxavilableInsName.Items[i].Selected)
    {
        if (!arraylist1.Contains(lboxavilableInsName.Items[i]))
        {
            arraylist1.Add(lboxavilableInsName.Items[i]);
            arrUpdatedInsValues.Add(lboxavilableInsName.Items[i].Value);
            arrUpdatedInsNames.Add(lboxavilableInsName.Items[i].Text);                          
        }
        ViewState["UpdatedInsValues"] = arrUpdatedInsValues;
        arrUpdatedInsValuestotal = (ArrayList)ViewState["UpdatedInsValues"];
        ViewState["UpdatedInsValues2"] = `enter code here`arrUpdatedInsValuestotal;
        ViewState["UpdatedInsNames"] = arrUpdatedInsNames;
    }
}

其实我已经在列表框中给出了selsectionmode="Multiple"。当我在页面加载后第一次或后续时间选择时,这将选择我多个项目,但我希望在代码后面说 ex:如果我第一次选择 2 个项目,则 2 个项目将添加到第二个列表框中,我会得到这些选定项目的值。

如果在第二次 listbox 添加先前的选择项后再次选择任何项目,我希望在第二次选择项目值以及前两个项目值。所以我想要的总共有 3 个值。我需要将该值发送到要插入的存储过程。

【问题讨论】:

  • ListBox 控件上有一个SelectionChanged 事件,您可以使用它来控制选择的项目,并从SelectedItems 属性更新您的第二个列表。但是最好将数据绑定到SelectedItems 并在VM 上进行所有逻辑。

标签: c# asp.net


【解决方案1】:

这是因为您每次都为第二个列表框分配新值,您不需要分配它们,您需要在第二个列表框中添加值,这样您的第二个列表框将保留所有以前的和新的价值观也是如此。 希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多