我正在使用silverlight框架4:我试图列出我的项目在通用列表中的列表框控件:但唯一的数据接收是类名称本身。将泛型类型转换为列表框控件
lsBox => ListBox控件 lsTags =>泛型类型
我的问题是:我怎么可以加我的项目在泛型列表,列表框控件?
我的代码是:
lsBox.ItemsSource = lsTags;
我正在使用silverlight框架4:我试图列出我的项目在通用列表中的列表框控件:但唯一的数据接收是类名称本身。将泛型类型转换为列表框控件
lsBox => ListBox控件 lsTags =>泛型类型
我的问题是:我怎么可以加我的项目在泛型列表,列表框控件?
我的代码是:
lsBox.ItemsSource = lsTags;
的ListBox
(和大多数其他控件),用于显示用户类型的默认行为是调用ToString()
方法。其默认行为是显示类名称。
,你应该怎么做,取决于你想显示什么,但如果是一些简单的像显示Name
属性的值,只需设置DisplayMemberPath
property:
<ListBox Name="lsBox" DisplayMemberPath="Name" />
您可以使用DisplayMemberPath
和SelectedValuePath
性质您的ListBox
控件告诉ListBox应该为每个项目显示哪个属性的值,以及哪些属性应该用于阻止ListBox.SelectedValue
属性。或者使用ListBox.ItemTemplate
来显示这样一个复杂的数据:
<ListBox x:Name="usersInGroupLBox">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<CheckBox IsChecked="{Binding IsActive, Mode=TwoWay}" />
<TextBlock Text="{Binding User.UserName}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
不要忘了,你只能使用公共属性结合。检查你的课程Tag
。
+1反转苛刻-1。人们请给新手一个机会。 – AnthonyWJones 2011-06-04 21:47:43
谢谢AnthonyWJones – user 2011-06-05 09:28:46