Click here to Skip to main content
16,016,613 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
listbox show System.Data.DataRowView instead of real values.

What I have tried:

C#
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
      /*  if (DropDownList1.SelectedValue == DropDownList1.SelectedItem.Text)
        {
            string query = "SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME="+ "DropDownList1.SelectedItem.Text+" ;
            DataTable dt = _Default.ExecuteQuery(query);
            ListBox1.Items.Clear();
            ListBox1.DataSource = dt;
            ListBox1.DataBind();

        }*/
        string query = "SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='" + DropDownList1.SelectedItem.Text+"'";



        using (SqlCommand cmd = new SqlCommand(query))
        {
            using (SqlDataAdapter sda = new SqlDataAdapter())
            {
                cmd.Connection = con;
                sda.SelectCommand = cmd;
                using (DataSet ds = new DataSet())
                {

                    sda.Fill(ds);


                    ListBox1.DataSource = ds.Tables[0];
                    ListBox1.DataBind();

                }

            }
        }
Posted
Updated 17-Apr-17 20:18pm

1 solution

Please add the below code

ListBox1.DataSource = ds.Tables[0];
ListBox1.DataValueField = ds.Tables[0].Columns["ValueColumnname"].ToString(); //To bind value field
ListBox1.DataTextField = ds.Tables[0].Columns["DisplayColumnname"].ToString(); ;//To bind display field
ListBox1.DataBind();
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900