Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# DataGrid.SelectedItems未识别_C#_Wpf_Datagrid_Bindinglist - Fatal编程技术网

C# DataGrid.SelectedItems未识别

C# DataGrid.SelectedItems未识别,c#,wpf,datagrid,bindinglist,C#,Wpf,Datagrid,Bindinglist,我正在使用datagrid显示数据库中的数据,我需要获取所选行,但当我使用datagrid.SelectedItem时,它无法识别属性SelectedItem。有人知道原因吗? 我使用bindinglist将数据绑定到网格 private void delete_btn_Click(object sender, RoutedEventArgs e) { if (selectAll == true) { ThisAddIn.s

我正在使用datagrid显示数据库中的数据,我需要获取所选行,但当我使用datagrid.SelectedItem时,它无法识别属性SelectedItem。有人知道原因吗? 我使用bindinglist将数据绑定到网格

    private void delete_btn_Click(object sender, RoutedEventArgs e)
    {
        if (selectAll == true)
        {
            ThisAddIn.sourceContext.removeAll();
        }
        else
        {                
            var grid = sender as DataGrid;
            var selected = grid.SelectedItems;

            foreach (var item in selected)
            {
                ThisAddIn.sourceContext.removeEntity ((Source)item);
            }                
        }           
    }

是课程的一部分

但是,如果未选择任何内容,则会遇到问题

这有用吗

      var selected = grid.SelectedItems;
      if (selected != null)
      {
        foreach (var item in selected)
        {
            ThisAddIn.sourceContext.removeEntity ((Source)item);
        }
      }

需要定义
此addin.sourceContect
。如果这是您的DataGrid,则显示如何使用数据填充它。无法再现错误。但您的代码是SelectedItems而不是SelectedItem。为什么不直接获取按钮的DataContext呢。我认为语法是((按钮)sender.DataContext。我不需要按钮的DataContext。奇怪的是,无论我在哪里尝试调用DataGrid上的这个属性,它仍然说这个定义不存在。我已经导入了所有必需的引用。知道我的DataGrid是window类型有什么区别吗?公共部分类DataGrid:Window感谢您指出这一点,但这并不是我问题的答案。
      var selected = grid.SelectedItems;
      if (selected != null)
      {
        foreach (var item in selected)
        {
            ThisAddIn.sourceContext.removeEntity ((Source)item);
        }
      }