datagrid 刷新问题

tianxz 2014-07-08 06:40:44
我使用linq绑定到wpf 中datagrid控件。
Tabel<Tasks> _tasks;
IQueryable<Tasks> _task;

_task = from p in _tasks select p;
datagrid1.itemsource= _task;


当我删除当前记录时:

Tasks _task = (Tasks) datagrid1.SelectedItem;
var q = from a in _tasks where a.Id == _task.Id select a;
_tasks.DeleteAllOnSubmit(q);
但是datagrid无法删除,只有submit后才更新。我想让datagrid删除这一行在提交以前。该如何处理?谢谢。
...全文
148 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianxz 2014-08-05
  • 打赏
  • 举报
回复
我发现当我调用TT.insertonsubmit(_new)后。 TT根本没有添加new元素。其实 DeleteAllOnSubmit 和insertonsubmit是一样的道理。调用后根本没有操作TT. 所以调用以上两个函数根本无法在保存到数据库以前刷新datagrid.假如绑定linq。请问各位有什么好办法?
tinydyw 2014-07-09
  • 打赏
  • 举报
回复
..点击删除的时候执行一下submit不就好了?
exception92 2014-07-09
  • 打赏
  • 举报
回复
引用 10 楼 tianxz 的回复:
谢谢,我是一个linq的初学者。还是不是很了解。 你说用
ObservableCollection
存储数据,但是linq的结果是IEumberable or IQueryable.能不能给我一个具体的例子?谢谢。

ObservableCollection<T> collection = new ObservableCollection<T>(IEumberable集合);
tianxz 2014-07-09
  • 打赏
  • 举报
回复
其他的我都搞定,就是点击删除按钮时无法删除datagrid上的选择行。请问有什么办法?
tianxz 2014-07-08
  • 打赏
  • 举报
回复
谢谢,我是一个linq的初学者。还是不是很了解。 你说用ObservableCollection 存储数据,但是linq的结果是IEumberable or IQueryable.能不能给我一个具体的例子?谢谢。
exception92 2014-07-08
  • 打赏
  • 举报
回复
引用 6 楼 tianxz 的回复:
这样的话,用datatable来绑定应该比linq好?
同样是查询数据,就绑定而言,没有什么好不好的。看你实现怎么的功能。
exception92 2014-07-08
  • 打赏
  • 举报
回复
wpf是基于“数据驱动”的,不同于Winform的“事件驱动”,你想实现从数据集中删除数据,给用户一个体验,就是确定这条数据从数据集中移除了,然后再更新库,那你就想办法让你的 datagrid “知道”数据源变化了,或者是你的数据源变化,然后“通知”到了你的datagrid,这就是“数据驱动”。使用ObservableCollection 集合来存储你的数据,然后绑定到你的datagrid,这样删除操作就会通知到界面。 给个链接, http://msdn.microsoft.com/zh-cn/library/ms668604(v=vs.110).aspx
tianxz 2014-07-08
  • 打赏
  • 举报
回复
自己顶一下,有人帮忙?
tianxz 2014-07-08
  • 打赏
  • 举报
回复
这样的话,用datatable来绑定应该比linq好?
於黾 2014-07-08
  • 打赏
  • 举报
回复
1.提交数据入库的操作不要用绑定数据集的方式,而是直接SQL语句拼接,把数据源和数据库分开 2.绑定前台用另一个表,确定删除后用此表数据更新后台表数据,再提交
tianxz 2014-07-08
  • 打赏
  • 举报
回复
如何让数据源直接发生变化?
tianxz 2014-07-08
  • 打赏
  • 举报
回复
请问解决方案。
於黾 2014-07-08
  • 打赏
  • 举报
回复
你这是把数据源和数据库绑定了,数据不提交,数据源也不变化 然后数据源又和前台表绑定,数据源不变化,表格也不变化
SQL77 2014-07-08
  • 打赏
  • 举报
回复
应该还有其他的方法 删除吧。不用ONSUBMIT 。

110,571

社区成员

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

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

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