我想在Silverlight中填充一个TreeView,但我遇到了一些困难 - 它总是显示为空。Silverlight TreeView不会填充
我找到了一个很好的教程(here),我创建了一个新项目并使用C#编写了它的代码,并且它完美地工作。我现在试图将其纳入我的项目(使用VB),但它不工作。我的VB代码如下:
XAML
<UserControl.Resources>
<common:HierarchicalDataTemplate x:Key="myHierarchicalTemplate" ItemsSource="{Binding Items}" >
<TextBlock Text="{Binding myString}" />
</common:HierarchicalDataTemplate>
</UserControl.Resources>
<controls:TreeView Height="200" HorizontalAlignment="Left" Margin="280,464,0,0" Name="TreeView1" VerticalAlignment="Top" Width="120" ItemTemplate="{StaticResource myHierarchicalTemplate}" />
VB代码:
Public Class myItem
Public myString As String
Public Items As ObservableCollection(Of myItem)
Public Sub New(ByVal myString As String, ByVal ParamArray myItems() As myItem)
Me.myString = myString
Dim itemsObservableCollection = New ObservableCollection(Of myItem)
For Each item As myItem In myItems
itemsObservableCollection.Add(item)
Next
Me.Items = itemsObservableCollection
End Sub
End Class
并填充它:
Dim itemsSource As New ObservableCollection(Of myItem)
itemsSource.Add(New myItem("Hello", New myItem("World"),
New myItem("Foo")))
itemsSource.Add(New myItem("Moo", New myItem("Boo", New myItem("Goo"))))
TreeView1.ItemsSource = itemsSource
我缺少什么?
编辑:我已经尝试调试该项目,并且“itemsSource”集合似乎正在生成,并被分配给TreeView1.ItemsSource罚款,但没有显示。它是一个显示绑定问题?
对象必须执行INotifyPropertyChanged – 2011-02-09 11:12:18