C# 如何将项目发送到listbox并在每一行上都有一个项目

C# 如何将项目发送到listbox并在每一行上都有一个项目,c#,C#,我有一段代码,它将项目从列表形式的数据库中的单元格发送到lsitbox。 但是,当它加载到数据库中时,它会显示在一个长列表中,而不是每个新项目都转到一个新行 有人能帮忙吗 private void ItemCBx_SelectedIndexChanged(object sender, EventArgs e) { Listbox1.Items.Clear(); MAcon.Open(); OleDbDataAdapter da = new OleDbDataAdapte

我有一段代码,它将项目从列表形式的数据库中的单元格发送到lsitbox。 但是,当它加载到数据库中时,它会显示在一个长列表中,而不是每个新项目都转到一个新行

有人能帮忙吗

private void ItemCBx_SelectedIndexChanged(object sender, EventArgs e)
{

    Listbox1.Items.Clear();
    MAcon.Open();
    OleDbDataAdapter da = new OleDbDataAdapter("Select Process from [Product Family] Where [Product Name] = @ProductName", MAcon);
    da.SelectCommand.Parameters.AddWithValue("@ProductName", ItemCBx.SelectedItem.ToString());
    DataTable dtbl = new DataTable();
    da.Fill(dtbl);

    if (dtbl.Rows.Count == 1)
    {
        Listbox1.Items.Add(dtbl.Rows[0][0]);
    }

    MAcon.Close();
    Listbox1.Show();
    Listbox1.Text.ToString().Split(',').ToList().ForEach(r => Listbox1.Items.Add(r.Trim()));
    //           Define.SelectedIndex = 1;
}

你也可以这样写

Listbox1.Items.Clear();
MAcon.Open();
OleDbDataAdapter da = new OleDbDataAdapter("Select Process from [Product Family] Where [Product Name] = @ProductName", MAcon);
da.SelectCommand.Parameters.AddWithValue("@ProductName", ItemCBx.SelectedItem.ToString());
DataTable dtbl = new DataTable();
da.Fill(dtbl);
ListBox1.DataSource = dtbl;

ListBox1.DisplayMember = "Process ";
ListBox1.ValueMember = "Process";
MAcon.Close();
Listbox1.Show();    
//           Define.SelectedIndex = 1;

创建另一个列表框,将初始项发送到该列表框,然后从第二个列表框将其发送到初始列表框

Listbox1.Items.Clear();
MAcon.Open();
OleDbDataAdapter da = new OleDbDataAdapter("Select Process from [Product Family] Where [Product Name] = @ProductName", MAcon);
da.SelectCommand.Parameters.AddWithValue("@ProductName", ItemCBx.SelectedItem.ToString());
DataTable dtbl = new DataTable();
da.Fill(dtbl);
ListBox2.DataSource = dtbl;

ListBox2.DisplayMember = "Process ";
ListBox2.ValueMember = "Process";
MAcon.Close();
Listbox2.Show();    
            listBox2.Text.ToString().Split(',').ToList().ForEach(r => Listbox1.Items.Add(r.Trim()));

//       
返回所选项目的;由于您没有选择任何项目,它将返回一个空字符串

在拆分列表之前选择第一项

ListBox1.SelectedIndex = 0;
Listbox1.Text.ToString().Split(',').ToList().ForEach(r => Listbox1.Items.Add(r.Trim()));
…或直接拆分
列表框的第一个元素

Listbox1.Items[0].ToString().Split(',').ToList().ForEach(r => Listbox1.Items.Add(r.Trim()));

这不会将项目放入列表形式