C# 如何用带有内部列表的列表集合表示wpf中的数据

C# 如何用带有内部列表的列表集合表示wpf中的数据,c#,wpf,xaml,C#,Wpf,Xaml,当每个属性都包含其名称和值列表时,如何表示属性集合(列表)?内部列表(值)通常具有不同的长度。我正在使用wpf。 我试图使用DataGrid,但无法正确绑定集合您可以使用ItemsControl,将ItemTemplate属性设置为DataTemplate和其他ItemsControl,如下所示: > <ItemsControl ItemsSource="{Binding OuterList}"> <ItemsControl.ItemTemplate>

当每个属性都包含其名称和值列表时,如何表示属性集合(列表)?内部列表(值)通常具有不同的长度。我正在使用wpf。
我试图使用DataGrid,但无法正确绑定集合

您可以使用ItemsControl,将ItemTemplate属性设置为DataTemplate和其他ItemsControl,如下所示:

> <ItemsControl ItemsSource="{Binding OuterList}">
    <ItemsControl.ItemTemplate>
      <DataTemplate>
        <TextBlock Text="{Binding Name}" />            
        <ItemsControl ItemsSource="{Binding InnerList}" />
      </DataTemplate>
    </ItemsControl.ItemTemplate>
  </ItemsControl>
>

我必须在cs文件中写入什么?这些绑定对我来说是非常神奇的。ItemsControl看起来很糟糕,我必须让它看起来像table,所以它的坏选项我猜如果你愿意,我可以提供一个c代码,但我真的建议用XAML来实现。至于外观,也可以定制(但在代码中这比在XAML中更难)。我也可以帮忙,但如果是这样的话,你能更详细地描述一下吗?我会尽可能详细地描述整个收藏。所以我有一个类DataAttributeCollection,它继承自list,它只是list。DataAttribute类是以字符串形式包含attributeName并列出命名值的类。例如,2个DataAttribute对象。1.属性名称温度可以包含类似(热、冷)2的列表。attributeName Rain与list(高、低、无)匹配,因此我必须显示类似于1的内容。温度冷热两雨高低不好哦,好吧,我说得太快了。我的答案很难翻译成代码,因为创建DataTemlate需要花费大量的精力(这实际上需要将字符串翻译成带有帮助器类的XAML),我认为您不会希望这样做。恐怕除了推荐学习一些XAML之外,我不能再多说了,因为这是WPF所说的语言。