填充逗号分隔的字符串到Asp.net中的多选ListBox - C#

时间:2017-10-04 21:34:40

标签: c# asp.net listbox multi-select

我有一个列表框,我想从逗号分隔的字符串中选择,但我的代码不起作用。

ASPX:

$sql = "DELETE FROM {$table} WHERE id = ".$_GET['delete_id']." LIMIT 1";

ASPX.CS :(代码)

<asp:ListBox ID="ListBox1" runat="server" SelectionMode="Multiple">
    <asp:ListItem Value="1">aaa</asp:ListItem>
    <asp:ListItem Value="2">bbb</asp:ListItem>
    <asp:ListItem Value="3">ccc</asp:ListItem>
    <asp:ListItem Value="4">ddd</asp:ListItem>
    <asp:ListItem Value="5">eee</asp:ListItem>
    <asp:ListItem Value="6">fff</asp:ListItem>
</asp:ListBox>

预期结果:(预期结果是我所期待的,但代码没有选择任何内容)

string listboxvalues = "2,1,5";
for (int i = 0; i < ListBox1.Items.Count; i++)
{
    foreach (string category in listboxvalues.ToString().Split(','))
    {
        if (category != ListBox1.Items[i].Value) continue;
            ListBox1.Items[i].Selected = true;
            break;
    }
}

1 个答案:

答案 0 :(得分:0)

ASPX.CS :(代码)

string listboxvalues = "2,1,5";

//declare a list

List<string> items = new List<string>()

for (int i = 0; i < ListBox1.Items.Count; i++)
{
    foreach (string category in listboxvalues.ToString().Split(','))
    {
        if (category != ListBox1.Items[i].Value) continue;
            items.Add(category);
            break;
    }
}

//then in your ListBox1

listBox1.DataSource = items;
        listBox1.DisplayMember = "Item";
        listBox1.ValueMember = "Value";