0

我正在使用listBox.ItemsSource = e.Result.Persons,这是一个人的集合。当我希望它显示每个人对象的名字时,列表框会显示实际的对象名称。我怎样才能做到这一点?

4

4 回答 4

1

使用列表框 ItemTemplate。像这样的东西。

<ListBox>
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding FirstName}"/>
</ListBox.ItemTemplate>
</DataTemplate>
</ListBox>
于 2011-03-24T19:00:12.567 回答
0

除了其他响应指定的绑定方法之外,您可以简单地绑定它,如下所示:

listBox.ItemsSource = e.Result.Persons.Select(d => new { FirstName });
于 2011-03-24T19:29:37.730 回答
0

或者使用专用的“DisplayMemberPath”属性,它可以轻松完成您想要的操作,没有任何副作用(也没有额外的标记):

<ListBox DisplayMemberPath="FirstName" />

对于更复杂的项目表示,使用模板(见下文)。

于 2011-03-24T19:32:54.923 回答
0

您可以覆盖 Persons 对象的 ToString() 方法,以便它显示人员的名字。

于 2011-04-04T10:54:11.080 回答