如何获取DataTable中被Delete()的行?

维她奶 2004-12-02 06:10:39
我将DataTable dt绑定到DataGrid dg上:

dt.DefaultView.AllowNew = false;
dt.DefaultView.AllowDelete = false;
dg.DataSource = dtWorkLog.DefaultView;

之后用以下方法删除DataGrid中被选择中的行:

CurrencyManager cm = ((CurrencyManager)this.BindingContext[dg.DataSource, dg.DataMember]);
DataView dv = ((DataView)cm.List);
DataRow tmp = dv[cm.Position].Row;
tmp.Delete();
//我并没有使用AcceptChanges()

但是我用foreach(DataRow row in dt.Rows)却找不到RowState为DataRowState.Deleted的行...

那么应该怎么样才能够得到被Delete()方法删除掉的行呢?
...全文
205 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yadang 2004-12-07
  • 打赏
  • 举报
回复
DataTable dtdel = dt.GetChanges(DataRowState.Deleted);
goodoycg 2004-12-03
  • 打赏
  • 举报
回复
DataTable dtdel = dt.GetChanges(DataRowState.Deleted);
zhpsam109 2004-12-03
  • 打赏
  • 举报
回复
ds1=ds.GetChanges(DataRowState.Deleted);
_jfeng 2004-12-03
  • 打赏
  • 举报
回复
若可以删除,则:DataTable dtdel = dt.GetChanges(DataRowState.Deleted);
_jfeng 2004-12-03
  • 打赏
  • 举报
回复
根本就没有被删除掉:dt.DefaultView.AllowDelete = false;
所以找不到
marvelstack 2004-12-03
  • 打赏
  • 举报
回复
DataTable xDataTable = myDataTable.GetChanges(DataRowState.Deleted);
huleeyar 2004-12-02
  • 打赏
  • 举报
回复
DataView dv = new DataView(dt,"","",DataViewRowState.Deleted);
yellowhwb 2004-12-02
  • 打赏
  • 举报
回复
你试试直接对datatable中的行进行删除,不要操作DataView!
peng1014 2004-12-02
  • 打赏
  • 举报
回复
mark
linzsoft 2004-12-02
  • 打赏
  • 举报
回复
用 for 试试

110,545

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧