【问题标题】:Get Selected Item on Column on Datagrid WPF and Find it by Linq在 Datagrid WPF 的列上获取所选项目并通过 Linq 查找它
【发布时间】:2017-06-13 04:08:37
【问题描述】:

您好,我正在使用 wpf 数据网格。我的 dataGrid_Division 包含 3 列 D_IDD_NameBranch_ID

还有另一个数据网格dataGrid_Branch包含2个B_ID列B_Name 我想在 dataGrid_Branch 中获取用户选择记录,它存储 B_ID 并在我的数据库中查找具有相同 ID 的所有结果 Division.B_ID它只是一个一对多的关系。

然后我希望所有结果都显示在 dataGrid_Division 上,所有记录具有相同的 B_ID id。 所以总结一下 dataGrid.Branch 上选定行的Select * from Division where ID = ID,对不起,我的英语不好。

private void Departments_page_Loaded(object sender, RoutedEventArgs e)
        {
            _dbObj = new medical_databaseEntitiescon();
            dataGrid_Branch.ItemsSource = _dbObj.branches.ToList();
        }

        private void dataGrid_Branch_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            _dbObj = new medical_databaseEntitiescon();

           // I want to Do the action here

        }

【问题讨论】:

    标签: c# mysql wpf linq datagrid


    【解决方案1】:

    您的代码应如下所示:

    var selectedBranch = dataGrid_Branch.SelectedItem as Branch;
    var selectedDivisions = _dbObj.divisions.Where(x => x.B_ID == selectedBranch.B_ID).ToList();
    
    dataGrid_Division.ItemsSource = selectedDivisions;
    

    你没有提到你的部门结构的名称,所以我认为它是divisions

    【讨论】:

    • 我得到的唯一错误是 as Branch 有什么想法吗?分支是变量还是我的数据表?
    • 任何人都可以解释 as Branch; 部分的人吗?
    • 这是您的 _dbObj.branches -结构的类型。只需将其更改为正确的数据类型。我只是假设它是你提到的分支。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多