Entity framework 绑定到Datagridview的添加删除修改

 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms; namespace EFBindingDataGridView
{
public partial class Form1 : Form
{
Model1 model = new Model1();
List<Setting> list = new List<Setting>();
public Form1()
{
InitializeComponent();
} private void loadButton_Click(object sender, EventArgs e)
{
list = model.Settings.ToList() ;
bindingSource1.DataSource = list;
dataGridView1.DataSource = bindingSource1;
} private void saveButton_Click(object sender, EventArgs e)
{
dataGridView1.EndEdit();
bindingSource1.EndEdit();
//保存前把新增的对象加入
foreach(Setting item in list)
{
if(model.Entry(item).State == System.Data.Entity.EntityState.Detached)
{
model.Settings.Add(item);
}
}
model.SaveChanges();
} private void dataGridView1_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
{
//获取删除的对象
Setting set = (Setting)e.Row.DataBoundItem;
model.Settings.Remove(set);
} }
}

最新文章

  1. HyperDock,让Mac的窗口飞
  2. linux cpu占有率居高不下 调试
  3. Redis基础知识之————如何处理客户端连接
  4. 在网页中添加分享到微信、QQ、微博
  5. 【python】【转】Python生成随机数的方法
  6. 最短路Dijkstra和Flyod
  7. SpringMVC批量上传
  8. ruban后台项目启动。进入断点
  9. 使用K-means进行聚类,用calinski_harabaz_score评价聚类效果
  10. Syntax error, parameterized types are only available if source level is 1.5 解决方案
  11. 洛谷P1219 :八皇后(DFS+回溯)
  12. haproxy+keepalived配置haproxy反向代理的高可用
  13. 【Ubuntu】VirtualBox 您没有查看“sf_VirtualDisk”的内容所需的权限。
  14. java开源项目jremoting
  15. 最小生成数 克鲁斯卡尔 普里姆 matlab
  16. 【黑金原创教程】【TimeQuest】TimeQuest原创教程连载导读【连载完成,共七章】
  17. PHP对象5: define / const /static
  18. 1、量化投资—为什么选择Python?
  19. 小程序 当button遇上Flex布局
  20. python网络编程之进程

热门文章

  1. __x__(36)0908第五天__背景 background
  2. HDFS的WEB页面访问常见问题
  3. 关于vue页面多了之后,webpack热更新速度慢的解决办法
  4. XP下ubuntu双系统安装方法
  5. Linux技术栈整理一:系统体系结构
  6. day26:静态方法,类方法和反射
  7. 让Delphi的TRichEdit支持新标准
  8. oracle根据某个字段的值进行排序
  9. angular脚手架搭建
  10. centos下etcd集群安装