如何将一些选定的项目及其索引从列表框添加到数据表

时间:2016-05-16 17:18:00

标签: c# winforms datatable listbox

我试图使用这样的东西: 我有20个列表项,我必须选择其中一些,然后将它们添加到第一列元素中的数据表中,第二列 - 它们的索引。

    DataTable dt = new DataTable();
      dt.Columns.Add("Фактор-Критерій", typeof(string));
      dt.Columns.Add("Ранг", typeof(string));

      ChoosenCriteria.DataSource = dt;
        List<string> selectedItems = new List<string>();
        foreach (string o in listBox1.SelectedItems)
            selectedItems.Add(o);
        List<int> selectedItemIndexes = new List<int>();
        foreach (int o in listBox1.SelectedIndices)
            selectedItemIndexes.Add(listBox1.Items.IndexOf(o));
        DataRow dr = dt.NewRow();
        dr[0] = selectedItems.ToString();
            dr[1] = selectedItemIndexes.ToString();
            dt.Rows.Add(dr););

我无法做到这一点,我最后的所有内容都在屏幕上:enter image description here

1 个答案:

答案 0 :(得分:0)

完成修改后移动DataSource绑定语句,如

for(int i=0; i<selectedItems.Count;i++
{
    DataRow dr = dt.NewRow();
    dr[0] = selectedItems[i].ToString();
    dr[1] = selectedItemIndexes[i].ToString();
    dt.Rows.Add(dr);
}
ChoosenCriteria.DataSource = dt;