• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 202
  • Last Modified:

List Box double populating

I have a new one for you guys...

I have a list box that is populated via a stored procedure .... Now here is the wierd thing my list box is being double populated... that is if I have only two names in my database where the reader is reading from i.e. Adams and Zach it is printing them ouit twice adams zach adams zach...

its like the method is being called twice...

does anyone know how to stop it from doing that???

Matt



SqlConnection con = new SqlConnection(Settings.GetConfigValue("PARK_IRB_V1_11_19_2010", "IRB2010ConnectionString"));
            con.Open();
            SqlCommand cmd = new SqlCommand("P_sp_PopulateNewFactSup", con);
            SqlDataReader r = cmd.ExecuteReader();
            DataTable dt = new DataTable();
            while (r.Read())
            {
                ListItem i = new ListItem(r["truename"].ToString().Trim(), r["ParkID"].ToString().Trim());
                LBFactSupNew.Items.Add(i);
            }
            con.Close();

Open in new window

0
HawaiiDragon
Asked:
HawaiiDragon
1 Solution
 
brutaldevCommented:
Setup breakpoints and check the stack trace for each call that goes into the method code you have provided. That way you can find why the extra call is getting made.

To avoid the list getting extra items in the case where you can't stop the extra calls, just clear it at the beginning of while loop:
...
LBFactSupNew.Items.Clear();
while (r.Read())
{
  ListItem i = new ListItem(r["truename"].ToString().Trim(), r["ParkID"].ToString().Trim());
  LBFactSupNew.Items.Add(i);
}
...

Open in new window

0
 
HawaiiDragonAuthor Commented:
I did this thank you for your help

 SqlConnection con = new SqlConnection(Settings.GetConfigValue("PARK_IRB_V1_11_19_2010", "IRB2010ConnectionString"));
            con.Open();
            SqlCommand cmd = new SqlCommand("P_sp_PopulateNewFactSup", con);
            SqlDataReader r = cmd.ExecuteReader();
            DataTable dt = new DataTable();
            LBFactSupNew.Items.Clear();
            while (r.Read())
            {
                ListItem i = new ListItem(r["truename"].ToString().Trim(), r["ParkID"].ToString().Trim());
                LBFactSupNew.Items.Add(i);
            }
            con.Close();
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: CompTIA Healthcare IT Tech

This course will help prep you to earn the CompTIA Healthcare IT Technician certification showing that you have the knowledge and skills needed to succeed in installing, managing, and troubleshooting IT systems in medical and clinical settings.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now