gpt4 book ai didi

c# - 将自定义对象数据显示到 ListBox WPF

转载 作者:太空狗 更新时间:2023-10-29 19:51:25 25 4
gpt4 key购买 nike

我在 WPF 应用程序中有一个列表框:

<ListBox HorizontalAlignment="Left" Margin="16,37,0,16" Name="lbEmpList" Width="194" SelectionChanged="lbEmpList_SelectionChanged" FontSize="12" SelectionMode="Single">

</ListBox>

我有三个按钮:添加、删除和更新,它们将向列表框添加、删除和更新项目。我将项目添加到 ListBox 我的自定义类对象名称 objEmployee。这个自定义类包含几个属性:Id、Name、Address。
但是,当我将对象添加到 ListBox 时,它会将项目显示为

<Namespace Name>.<Custom Object name>

如何在设计或运行时将任何对象属性绑定(bind)到此 ListBox 以实现我的功能?

最佳答案

几个选项:

第一个也是最简单的选项是设置 ListBox 的 DisplayMemberPath属性到自定义对象的属性。因此,如果您的 Employee 类具有 LastName 属性,您可以这样做:

<ListBox DisplayMemberPath="LastName" ... />

如果您想更好地控制为每个项目显示的数据(包括自定义布局等),那么您需要定义一个 DataTemplate对于列表框中的每个项目。最简单的方法是简单地设置 ListBox 的 ItemTemplate属性:

<ListBox ...>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding FirstName}" />
<TextBlock Text="{Binding LastName}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>

阅读我提供的链接并查看 MSDN 上的一些示例代码。

关于c# - 将自定义对象数据显示到 ListBox WPF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/576515/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com