私は次のようなクラスを定義しました
Public Class MyClass
Public Type1 As Integer
Public Type2 As float
End Class
ListItemCollectionを(MyClassの)リストに変換するにはどうすればよいですか?
Dim x As New List(of [MyClass])
For Each y as [MyClass] in ListItemCollectionInstance.Items
if (y.Selected)
x.Add(y)
Next y
Linqの使用:
Dim selectedItems As List(Of [MyClass]) = ListItemCollectionInstance.Items.Cast(Of [MyClass])().Where(Function(itm) itm.Selected = True).ToList()
MyClass
isキーワードとVB.NETのタイプは、エイリアス(System.Single)float
で表されます。Single
Public Class Item
Public Type1 As Integer
Public Type2 As Single
End Class
サンプルデータを使用してコレクションを作成しました。
Dim cl As New ListItemCollection
cl.Add(New ListItem("1", "1.2"))
cl.Add(New ListItem("2", "2.3"))
cl.Add(New ListItem("3", "3.4"))
Dim lst = From ele In cl Select New _
Item With
{
.Type1 = Integer.Parse(ele.Text),
.Type2 = Single.Parse(ele.Value)
}
For Each ele As Item In lst
Response.Write("<br/> " & ele.Type1 & " " & ele.Type2)
Next