所选索引更改的列表框多项目选择?

时间:2011-09-29 12:22:29

标签: c# asp.net mvp

我有一个列表框,其中我有多个值

<asp:ListBox ID="lstbox" runat="server" SelectionMode="Multiple" Width="120px">
<asp:ListItem Value="0">None</asp:ListItem>
<asp:ListItem Value="8">Rohan</asp:ListItem>
<asp:ListItem Value="16">Jems</asp:ListItem>
<asp:ListItem Value="64">Tena</asp:ListItem>
<asp:ListItem Value="4">Marry</asp:ListItem>
<asp:ListItem Value="2">Pinky</asp:ListItem>
<asp:ListItem Value="32">Coral</asp:ListItem>
<asp:ListItem Value="1">Dev</asp:ListItem>
<asp:ListItem Value="128">Sam</asp:ListItem>
</asp:ListBox>

我想要选择一个项目或多个选择的索引更改我正在调用一个方法

    protected void lstbox_SelectedIndexChanged(object sender, EventArgs e)
    {
        Presenter.getRoles();//filling a grid from database call
    }

    public void getRoles()
    {
        int proid = 0;
        int per=0;
        if (View.UPrivileges.Count > 0)
        {
            proid = Convert.ToInt32(View.UPrivileges.SelectedValue);//listbox selection
            per= Convert.ToInt32(View.Products.SelectedValue);// i have a ddl product checking the value
        }
        if (proid != 0 || per !=0)
        {
            View.Ownerid = per.ToString();
            View.Role = (CRole)proid;
            List<User> list = new List<User>();
            list.AddRange(userDao.GetUserRolesForItems(View.Role, View.Ownerid));// query method call            View.UserListItems.List = list;
            View.UserListItems.TotalRowCount = list.Count;
        }
    }

当我选择1个值然后它的工作正常但是对于多个项目给出错误,我想知道它是否可以使用selectedIndexChange,如果是,如果不是如何在一个按钮上单击

1 个答案:

答案 0 :(得分:1)

这可能会有所帮助

    foreach (ListItem item in lstbox.Items)
        {
            if (item.Selected)
            {
               //code here

            }
        }