ListBox 在绑定时不显示对象的 ToString()

本文关键字:ToString 对象 显示 绑定 定时 ListBox | 更新日期: 2023-09-27 17:55:46

我有一个ListBox,它绑定到类A的实例,这是一个集合。

class A : List<B> 
{ 
  public override ToString()
  {
    return "A";
  }
}

列表框:

<ListBox ItemsSource="{Binding instanceOfA}"></ListBox>

运行应用程序时,每个项目都显示"(集合)"

我该怎么做才能使每个项目显示"A"而不是"收藏"?

ListBox 在绑定时不显示对象的 ToString()

为了做你想做的事情,你应该有这样的东西

class B
{
  public override ToString()
  {
    return "A";
  }
}

ListBox 对集合的每个项调用ToString,这意味着永远不会调用您的方法。您需要覆盖 B 中的ToString()