在silverlight中,我的自定义控件位于UIElementCollection of my StackPanel中。我想通过一个特定的值来得到它们的列表。容器中只有DivElements。当我知道我有一个或多个时,它会返回Nothing。我知道我可以在内联中创建一个简单的循环和强制类型,但是我希望更好地使用LINQ和Cast(Of TResult)。我的试镜:
Dim myList = TryCast(spDivs.Children.Where(Function(o) DirectCast(o, DivElement).ElementParent Is bComm).Cast(Of DivElement)(), List(Of DivElement))发布于 2013-08-07 17:21:56
问题是你不能转换成一个List(Of DivElement)。集合是一个UIElementCollection,而不是一个List(Of T)。
不过,你可以建立一个新的名单。还可以通过使用OfType而不是手动转换来简化这一点:
Dim myList = spDivs.Children.OfType(Of DivElement)()
.Where(Function(o) o.ElementParent Is bComm)
.ToList()https://stackoverflow.com/questions/18109687
复制相似问题