从元组列表框中访问元组的特定项

时间:2016-11-24 17:37:19

标签: c# winforms list listbox tuples

我在访问插入列表框的元组项时遇到问题,因此我可以将它们分别插入数据库中。

enter image description here

为了便于您查看以下代码。

private void btnInsertToResult(object sender, EventArgs e)
    {
        Button butoni = sender as Button;

        if (butoni.Name == "btnMonday")
        {
            listRezultati.Items.Add(new Tuple<string, string, string>(Monday.Name, cmbMondayFrom.Text, cmbMondayTo.Text));
        }

        if (butoni.Name == "btnTuesday")
        {
            listRezultati.Items.Add(new Tuple<string, string, string>(Tuesday.Name, cmbTuesdayFrom.Text, cmbTuesdayTo.Text));
        }

        if (butoni.Name == "btnWednesday")
        {
            listRezultati.Items.Add(new Tuple<string, string, string>(Wednesday.Name, cmbWednesdayFrom.Text, cmbWednesdayTo.Text));
        }
        if (butoni.Name == "btnThursday")
        {
            listRezultati.Items.Add(new Tuple<string, string, string>(Thursday.Name, cmbThursdayFrom.Text, cmbThursdayTo.Text));
        }
        if (butoni.Name == "btnFriday")
        {
            listRezultati.Items.Add(new Tuple<string, string, string>(Friday.Name, cmbFridayFrom.Text, cmbFridayTo.Text));
        }
        if (butoni.Name == "btnSaturday")
        {
            listRezultati.Items.Add(new Tuple<string, string, string>(Saturday.Name, cmbSaturdayFrom.Text, cmbSaturdayTo.Text));
        }
    }

提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以使用以下方式获取项目:

var list = listBox.Items.Cast<Tuple<string, string, string>>().ToList();

您也可以将它们插入BindingList<Tuple<string, string, string>>并将ListBox绑定到该列表,方法是将绑定列表分配给DataSource ListBox。这样,您只需在绑定列表中添加或删除项目,更改就会立即显示在ListBox中。

注意: 如果要将它们保存在数据库中,请考虑使用DataTable或实体框架模型类,然后只需将它们保存到数据库即可。