WPF XAML DataGrid填充子DataGrid

时间:2016-09-15 09:32:37

标签: c# wpf xaml

我是WPF和XAML的新手。很抱歉,如果这看起来很简单,但我有一组课程:

Public class Master()
{
    public int Id {get;set;}
    public List<Student> Students { get; set; }
}

Public class Student()
{
    public int Id {get;set;}
    public string Name { get; set; }
}

我希望在数据网格中显示它们,因此我在页面上创建并配置了一个数据网格控件。

然后我使用以下方法绑定上面的类:

dataGrid.ItemsSource = result.Master.ToList();

这为我提供了列表,但我想要做的还是针对每个主行显示学生集合。目前,我得到的是(Collection)填充在datagrid的学生记录中。

1 个答案:

答案 0 :(得分:0)

从评论转到答案:

我假设您知道如何创建另一个数据网格,因为您已经拥有1个正确的绑定。只需复制粘贴另一个并将其移到一侧。

对于这个其他数据网格,我们称之为dataGrid2。

在第一个数据网格上:将其添加到您的xaml:

SelectionChanged="DataGrid_SelectionChanged"

并在代码背后:

private void DataGrid_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    var selected = dataGrid.SelectedItem as Master;
    dataGrid2.ItemsSource = selected.Students.ToList();
}

我没有包含所有内容,例如错误检查和空选择处理等。所以你需要实现它。