How to populate listbox dynamically with SQL values

痴心易碎 提交于 2019-12-22 08:42:06

问题


I am a C# beginner. What I am trying to do is pull data from a column in a SQL database and write it to a listbox. Basically, I want the data in the part_num column of my table to be displayed dynamically in the listbox.

I have seen:

this.listParts.Items.AddRange(new object[] {"Part1", "Part2"});

But how would I go about replacing “Part1” and “Part2” with dynamically generated values from SQL?

public mainForm()
{
    InitializeComponent();
    SqlConnection conn = new SqlConnection(
        "Data Source=DBELL;Initial Catalog=part_table;Integrated Security=True");
    conn.Open();
    DataSet ds = new DataSet();
    SqlDataAdapter adapter = new SqlDataAdapter(
        "SELECT part_num from customParts", conn);
         adapter.Fill(ds);
    foreach (DataRow row in ds.Tables[0].Rows)
    {
        for (int i = 0; i < ds.Tables[0].Columns.Count; i++)

        this.listParts.Items.AddRange(new object[] {"Part1", "Part2"});
    }
}

Any help is appreciated!


回答1:


Why not use the DataTable as DataSource:

public mainForm()
        {
            InitializeComponent();
            SqlConnection conn = new SqlConnection("Data Source=DBELL;Initial Catalog=part_table;Integrated Security=True");
            conn.Open();
            DataSet ds = new DataSet();
            SqlDataAdapter adapter = new SqlDataAdapter(
            "SELECT part_num from customParts", conn);
            adapter.Fill(ds);
            this.listParts.DataSource = ds.Tables[0]; 
            this.listParts.DisplayMember = "part_num"; 
        }

You should read up on DataSets or even better yet EntityFramework and data-binding.



来源:https://stackoverflow.com/questions/9116807/how-to-populate-listbox-dynamically-with-sql-values

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!