2014-11-23 100 views
0

我想刪除數據網格中選中的行,當他們點擊刪除按鈕。我希望它從數據庫和DataGrid中刪除。如何刪除DataGrid中的選定行?

這裏是我如何填充Gridbox,使用實體框架

ObjectContext objectContext3 = ((IObjectContextAdapter)dataEntities).ObjectContext; 
       ObjectSet<STUDENT> students = objectContext3.CreateObjectSet<STUDENT>(); 
        var query4 = 
        from STUDENT in students 
        orderby STUDENT.NameID 
        select new { STUDENT.DOB, STUDENT.NameID }; 
        userDataGrid.ItemsSource = query4.ToList(); 
        userDataGrid.UpdateLayout(); 

以下是我試圖刪除它做。我不是100%確定這是否正確。如果您認爲有更好的辦法,請讓我知道。

private void deleteRow_Click(object sender, RoutedEventArgs e) 
    { 
     DataGrid dg = this.userDataGrid; 

     if (dg != null) 
     { 
      var toDelete = (IList)dg.SelectedItems;//<-- Datagrid.SelectedItems 
      var collection = toDelete.Cast<DataRowView>(); 
      var list = new List<DataRowView>(collection); 

      foreach (var item in list) 
      { 
       item.Row.Delete(); 
      } 
     } 
    } 

任何幫助將不勝感激!

回答

0

什麼錯誤,你得到(如果有的話)?試着改變你的列表名稱的東西,是不使用.net框架

+0

那麼它從DataGrid中刪除它,但它不會從刪除數據庫。 – Travis 2014-11-24 02:16:59