如何删除DataGrid中的选定行?
问题描述:
我想删除数据网格中选中的行,当他们点击删除按钮。我希望它从数据库和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();
}
}
}
任何帮助将不胜感激!
答
什么错误,你得到(如果有的话)?试着改变你的列表名称的东西,是不使用.net框架
那么它从DataGrid中删除它,但它不会从删除数据库。 – Travis 2014-11-24 02:16:59