1

我有一个列表框,用户可以从中选择多行,这个列表框基本上包含用户拥有的宠物列表,每个宠物都有一个引用,显示宠物名称,每个项目值成员都是那个的引用宠物。如果用户在列表框中选择了多个宠物,我想提取每个值成员以便处理它们,到目前为止,这是我拥有的代码:

        string lvCat;
        foreach (Object selectedCat in lstCustCats.SelectedItems)
        {
            lvCat = selectedCat as String;
            DataRow Cats = dSSystem.Bookings_Cats.NewRow();
            Cats["BookRef"] = lblBookingRefR.Text;
            Cats["CatRef"] = lvCat;
            dSSystem.Bookings_Cats.Rows.Add(Cats);
            this.bookings_CatsTableAdapter.Update(this.dSSystem.Bookings_Cats);
        }

此代码为每个选定项目获取列表框中的第一项,但不遍历列表框,知道如何完成此操作吗?

谢谢

4

1 回答 1

1

你试图做lvCat = selectedCat as String;的是错误的,因为其中的项目lstCustCats.SelectedItems不是字符串。这应该工作

lvCat = selectedCat.ToString();

我将它标记为重复但它非常接近这个。在您运行该代码之后,如果您在 lvCat 中获得了一个类名,那么这就是该类selectedCat的类型。在这种情况下,您可以selectedCat转换为该类型并从那里继续

于 2013-07-31T19:13:04.097 回答