我有一个名为Incident的实体,正如您在图片中看到的那样,它包含一个包含多个错误的列表。
然后我有一个数据网格,我将所有事件的列表连接到:
List<ExtendedIncident> allIncidents;
myGrid.ItemsSource = allIncidents;
现在我绑定了每个事件中的一些值,就像在xaml代码中一样:
<sdk:DataGrid AutoGenerateColumns="False" Name="grid" SelectionMode="Single" SelectionChanged="grid_SelectionChanged">
<sdk:DataGrid.Columns>
<sdk:DataGridTemplateColumn Header="Incident">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<HyperlinkButton Content="{Binding CallId}" Click="HyperlinkButton_Click"></HyperlinkButton>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
<sdk:DataGridTextColumn Header="Beskrivnig" Binding="{Binding Description}"></sdk:DataGridTextColumn>
<sdk:DataGridTextColumn Header="Beskrivnig" Binding="{Binding Status}"></sdk:DataGridTextColumn>
</sdk:DataGrid.Columns>
我现在的问题是,我想添加一些列,这些列显示来自错误的一些数据,这些数据在同一行中是相关的(存储在事件列表中)。如何从事件中的错误列表中显示数据?
非常感谢任何帮助
答案 0 :(得分:1)
使用RowDetailsTemplate:
<sdk:DataGrid x:Name="dataGrid1" Height="400" IsReadOnly="True" >
<sdk:DataGrid.RowDetailsTemplate>
<DataTemplate>
<sdk:DataGrid ItemsSource={Binding BuggItems}/>
</DataTemplate>
</sdk:DataGrid.RowDetailsTemplate>
</sdk:DataGrid>
或者是聚合存储在列表中的所有项目的属性(如果ID是字符串,则在示例下面)。
public partial class Incident
{
public string IDs
{
get
{
return BuggItems.Aggregate((a,b) => a + "," + b);
}
}
}