WPF ListView 中的多维绑定
我有以下数据结构:
class XItem
{
public string Name {get;set;}
public int Position { get;set;}
...
}
class MyItemList
{
public List<XItem> Items{get;set;}
...
}
现在我想将 MyItemLists 列表绑定到 WPF-ListView。我希望每个 XItem 都有一个 ListViewItem。但我无法直接绑定它,因为 Items-Property 是 XItems 列表。
是否可以在不重组我的数据源的情况下实现这一点?
谢谢
I have the following Data-Structure:
class XItem
{
public string Name {get;set;}
public int Position { get;set;}
...
}
class MyItemList
{
public List<XItem> Items{get;set;}
...
}
Now i want to bind a List of MyItemLists to a WPF-ListView. I want to have a ListViewItem for every XItem. But i cannot bind it directly, because the Items-Property is a List of XItems.
Is it possible to realize this without restructuring my Datasource?
thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 Linq 的 SelectMany 来展平列表,然后再将其分配给列表的数据源属性。如果您使用 MVVM,那么您可以使用上面提到的代码让 ViewModel 的属性返回列表的扁平版本。
You can use SelectMany of Linq to flatten your list before assigning it to datasource property of list. If you're using MVVM then you can have a property of your ViewModel return a flatten version of the List by using code as mentioned above.