2011-06-17 7 views
0

に取り組んでいない私は、次の配列ラムダ配列

Dim items() = { 
           New CheckedListBoxItem("NYC", False), 
           New CheckedListBoxItem("CHI", False), 
           New CheckedListBoxItem("PHL", False), 
           New CheckedListBoxItem("SFO", False), 

       } 

を持っている私は、私はエラー

値をすることはできません取得しています。この

 Try 
      Dim item As CheckedListBoxItem = items.ToList().Where(Function(x) x.Value = "PHL") 
      MsgBox(item.Value) 
     Catch ex As Exception 
      MsgBox(ex.Message) 
     End Try 

のように、それに対してクエリにしようとしていますヌル。

パラメータ名:ソース

また、私は何をしないのです

Dim item As CheckedListBoxItem = items.FirstOrDefault(Function(x) x.Value.ToString() = "PHL") 

を試してみました。アイテムを取得し、それをfalseからtrueに変更した場合は、リストに対してクエリを実行するだけで済みます。あなたがする必要がある

答えて

1

item = items.ToList().Where(Function(x) x.Value = "PHL").First 

MsgBox(item.Value) 

Firstコレクションから最初の項目を返すまたはコレクションが空の場合に例外をスローします。

FirstOrDefaultは、コレクションの最初のアイテム、またはコレクションが空の場合はそのタイプのデフォルトインスタンスを返します。