Get all selected values from listbox

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • JustRun
    New Member
    • Mar 2008
    • 127

    Get all selected values from listbox

    Hi,

    I'm trying to get all values from an asp:listbox that enable multiple choices, and i made the following code but it only gets the last selected item, only one.
    I need to collect them all
    Code:
            for (int i = 0; i <= lstDept.Items.Count-1; i++)
            {
                if (lstDept.Items[i].Selected)
                {
                    try
                    {
                        cmd = new SqlCommand(
                            "INSERT INTO CoDepartmentTable(CompanyID, DeptID) " +
                            " VALUES (@CompanyID, @DeptID) ", cnn);
    
                        cnn.Open();
                        cmd.Parameters.AddWithValue("CompanyID", new Guid(ddlCompany.SelectedValue));
                        cmd.Parameters.AddWithValue("DeptID", new Guid(lstDept.SelectedValue));
    
                        if (cmd.ExecuteNonQuery() == 1)
                            lblErr.Text = "Your data have been saved successfuly";
                        else
                            lblErr.Text = "Unable to insert data </br> please refresh the page then try again";
                    }
    
                    catch (Exception ex)
                    {
                        lblErr.Text = "Cannot insert duplicated value, <br/> The department '" + lstDept.SelectedItem.Text + "' had been assigned to this company before";
                    }
                    finally
                    {
                        if (cnn != null) cnn.Close();
                    }
                }
    
            }
    Any Ideas :(
  • kiran143
    New Member
    • Sep 2008
    • 2

    #2
    i have an example which i got from internet
    Code:
    <asp:Label id="Message" runat="server"></asp:Label>
        <br />
        Which city do you wish to look at hotels for?<br />
        <form runat="server">
            <asp:listbox id="list1" runat="server" selectionmode="multiple">
                <asp:listitem>A</asp:listitem>
                <asp:listitem>B</asp:listitem>
                <asp:listitem>C</asp:listitem>
            </asp:listbox>
            <br />
            <input type="submit" value="Submit Query" />
    </form>
    in page load paste this

    Code:
    string msgCitiesList = "";
        
          if (Page.IsPostBack == true)
        
            if (list1.Items[0].Selected == true)
            {
              msgCitiesList = msgCitiesList + list1.Items[0].Text + "<br />";
            }
        
            if (list1.Items[1].Selected)
            {
              msgCitiesList = msgCitiesList + list1.Items[1].Text + "<br/>";
            }
        
            if (list1.Items[2].Selected)
            {
              msgCitiesList = msgCitiesList + list1.Items[2].Text + "<br />";
            }
        
            if (msgCitiesList != "")
            {
               Message.Text = "You have selected: <br />" + msgCitiesList;
            }
            else
            {
               Message.Text = "";
            }
          }
    Last edited by Curtis Rutland; Sep 27 '08, 09:58 PM. Reason: Use [CODE] [/CODE] tags when posting any code.

    Comment

    • JustRun
      New Member
      • Mar 2008
      • 127

      #3
      Thank You, my code worked well just like that, I dont know ehy it didn't work b4 but at any rate, it works now.

      Thank you

      Comment

      Working...