【问题标题】:WPF XAML DataGrid populating sub DataGridWPF XAML DataGrid 填充子 DataGrid
【发布时间】:2016-09-15 09:32:36
【问题描述】:

我是 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();

这为我提供了列表,但我想做的也是针对每个主行显示学生集合。目前我得到的只是(集合)填充在数据网格的学生记录中。

【问题讨论】:

  • 您可以并排放置 2 个数据网格,当您选择一行 Master 时,它会填充第二个数据网格 Student
  • Keyur 怎么做?正如我所说,我是这个 WPF/XAML 编程的新手。

标签: c# wpf xaml


【解决方案1】:

从 cmets 转到答案:

我假设您知道如何制作另一个数据网格,因为您已经拥有 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();
}

我没有包括所有的东西,例如错误检查和空选择处理等。所以你需要实现它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-24
    • 1970-01-01
    • 1970-01-01
    • 2011-03-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-01
    • 1970-01-01
    相关资源
    最近更新 更多