Hi

I am working in asp.net with C# web application, I have used visual studio 2003, i have used dropdownlist
in my application to populate the data from mysql database, i have got problem while i selected the item from
dropdownlist, its not selecting correct item i'm selecting from dropdownlist, i have 64 records in my table, but i
tried to work with upto 15 records it will not giving problem, when the scroll will enable to dropdownlist its
giving problem, its not selecting the correct record what i'm selecting in dropdownlist, i have used following
codes to fill dropdown and selected index,

public DataSet LoadShotTaskCode()
{
cmd = new MySqlCommand("HD_PROC_LOADSHOTTASK",global_con);
cmd.CommandType = CommandType.StoredProcedure;
adapter = new MySqlDataAdapter(cmd);
dataset = new DataSet();
adapter.Fill(dataset,"hd_tbl_taskcodes");
return dataset;
}


private void FillDropDown()
{
Access = new clshome();
ds = Access.LoadShotTaskCode();
if(ds.Tables[0].Rows.Count != 0 )
{
DropDownList1.DataTextField = "task_code";
DropDownList1.DataValueField = "task_description";
DropDownList1.DataSource = ds;
DropDownList1.DataBind();
if(DropDownList1.Items.Count != 0)
{
TxtEditTaskCode.Text = ds.Tables[0].Rows[0]["task_code"].ToString();
TxtEditTaskDesc.Text = ds.Tables[0].Rows[0]["task_description"].ToString();
}
}
else
{
DropDownList1.Items.Clear();
}
}


public MySqlDataReader Select_ShotTaskCoes(string tcode)
{
MySqlCommand taskcmd = new MySqlCommand("select * from hd_tbl_taskcodes where task_code='"+ tcode+"'",global_con);
global_con.Open();
MySqlDataReader dr = taskcmd.ExecuteReader(CommandBehavior.CloseConnection);
return dr;
}


private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e)
{
Access = new clshome();
MySqlDataReader taskdr = Access.Select_ShotTaskCoes(DropDownList1.SelectedItem.Text);
if(taskdr.Read())
{
TxtEditTaskCode.Text = taskdr.GetValue(0).ToString();
TxtEditTaskDesc.Text = taskdr.GetValue(1).ToString();
}
Access.global_con.Close();
}

please anybody help me to slove this problem, advanced Thanks for any reply.

Thanks.

Are you calling FillDropDown() in the Page_Load event handler? if so does it look like this:

if(!IsPostBack)
{
    FillDropDown();
}

Are you calling FillDropDown() in the Page_Load event handler? if so does it look like this:

if(!IsPostBack)
{
    FillDropDown();
}

Hi,

thanks for your immediate reply, i have called the fill dropdown method in page load but same problem continuing, could you please give some solution for this

Thanks.

private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e)
{

      TxtEditTaskCode.Text = DropDownList1.SelectedValue;
      TxtEditTaskDesc.Text = DropDownList1.SelectedItem.Text;
}

1. Why hit database when you already have the data in the drop down.
2. DropDownList1.SelectedItem.Text is the 'Description' DropDownList1.SelectedValue is the 'Code'.

private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e)
{
 
      TxtEditTaskCode.Text = DropDownList1.SelectedValue;
      TxtEditTaskDesc.Text = DropDownList1.SelectedItem.Text;
}

1. Why hit database when you already have the data in the drop down.
2. DropDownList1.SelectedItem.Text is the 'Description' DropDownList1.SelectedValue is the 'Code'.

Hi,

Thanks lot, i did big mistake in table, i didnt set primary key for my tables, i have set the primary key for my table now, dropdownlist problem automically solved, thanks for your immediate reply, because your gave more boost and ideas to me.

Thanks.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.