C# WPF中的分层数据网格

C# WPF中的分层数据网格,c#,wpf,datagrid,C#,Wpf,Datagrid,我有一个分层的数据网格 <DataGrid Name="dgList" ItemsSource="{Binding List1}" Grid.Row="0" Margin="0,0,0,0" CanUserAddRows="False" AutoGenerateColumns="False" IsReadOnly="True" > <DataGrid.Columns> &l

我有一个分层的数据网格

<DataGrid Name="dgList" ItemsSource="{Binding List1}" Grid.Row="0" Margin="0,0,0,0"
                      CanUserAddRows="False" AutoGenerateColumns="False" IsReadOnly="True" >
            <DataGrid.Columns>
                <DataGridTextColumn Header="Sub System" Binding="{Binding Path=Name}" IsReadOnly="True"></DataGridTextColumn>
            </DataGrid.Columns>
            <DataGrid.RowDetailsTemplate>
                <DataTemplate>
                    <DataGrid Name="dgList2" AutoGenerateColumns="False" ItemsSource="{Binding Name1}" CanUserAddRows="False" IsReadOnly="True" >
                        <DataGrid.Columns>
                            <DataGridTextColumn MinWidth="250" Header="Name3" Binding="{Binding Path=Name3}"></DataGridTextColumn>
                        </DataGrid.Columns>
                        <DataGrid.RowDetailsTemplate>
                            <DataTemplate>
                                <DataGrid Name="List2" AutoGenerateColumns="False" ItemsSource="{Binding List3}" CanUserAddRows="False" IsReadOnly="True" >
                                    <DataGrid.Columns>
                                        <DataGridTextColumn MinWidth="250" Header="FN" Binding="{Binding Path=FirstName}"></DataGridTextColumn>
                                        <DataGridTextColumn MinWidth="250" Header="LN" Binding="{Binding Path=LastName}"></DataGridTextColumn>
                                    </DataGrid.Columns>
                                </DataGrid>
                            </DataTemplate>
                        </DataGrid.RowDetailsTemplate>
                    </DataGrid>
                </DataTemplate>
            </DataGrid.RowDetailsTemplate>
        </DataGrid> 

网格工作正常,单击该行将展开子列表。但是,是否可能在左列上有一个箭头或+加号,这将表明有更多行

尝试在外部DataGrid上创建DataGridTemplateColumn。将单元格模板提到为一个按钮,内容=+并在单击事件中显示内部数据网格。可以是你的出发点。