VS2008 .NetFramework3.5 DataGridView 同步数据到绑定的数据源和数据库 DataGridViewvs2008 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 额。。一直没人回帖。。自己搞定了,跟帖留下来,希望对搜索相关问题的同学有帮助。其实很简单,只用三行代码:private void saveEditToolStripMenuItem_Click(object sender, EventArgs e) { //将光标移开当前单元格完成编辑 //DataGirdView会自动将界面数据与其绑定的数据源同步 this.keywordDataGridView.CurrentCell = null; //将项目数据源的内容更新 this.keywordDataSet = (keywordDataSet)((BindingSource)this.keywordDataGridView.DataSource).DataSource; //将数据库与数据源同步 this.keywordTableAdapter.Update(this.keywordDataSet.keyword); MessageBox.Show(this.keywordDataSet.keyword.Rows[0][2].ToString()); }注意,个人发现DataGirdView在用户编辑某单元格内容后,必须点击别的控件已完成光标的迁移才完成编辑,进而将界面数据与数据源同步。楼主也是因为这个问题,一直误以为自己界面上修改的数据没有同步到数据园中去。这对于用户操作而言很麻烦,因此在保存按钮中加入this.keywordDataGridView.CurrentCell = null;从而自动移除单元格中的光标,完成编辑。 用this.keywordDataGridView.EndEidt();就可以了,干嘛要移动光标? 你绑定数据源的情况我琢磨两天了,感谢你帖子对我的启示,但我又找到个更好的方法this.Validate();this.inputBindingSource.EndEdit();//同步数据到数据库this.inputTableAdapter.Update(this.sortDataSetinput.input); 我的问题是 使用了 this.keywordTableAdapter.Update(this.keywordDataSet.keyword); 方式之后 第一次EndEdit事件结束之后DataGridView控件中的数据变化了,数据库没有同步变化第二次EndEdit事件结束之后数据库的数据才变化搞不清啥么问题 求助 救命啊~~~~ 网上租了个MSSql 数据库 哥们:HHQSY [会舍弃,就能走更远] 窗口最大化问题 ResourceManager通过GetObject获得的图片具体保存在哪里? double 精度控制 如何删除TreeView中选中节点 怎样把ArrayList全部清空? Form1有Btn1,Form2有TxtBox2,如何点击Form1中的Btn1得出Form2中的TxtBox2的值? OOP的困惑——请指教 新手请教,如果从qq邮箱的服务器里获取一定数量的邮件的时候,耗时过长应该如何解决 为什么改用泛型查询找不到实例? C# 服务程序 播放声音
其实很简单,只用三行代码:private void saveEditToolStripMenuItem_Click(object sender, EventArgs e)
{
//将光标移开当前单元格完成编辑
//DataGirdView会自动将界面数据与其绑定的数据源同步
this.keywordDataGridView.CurrentCell = null;
//将项目数据源的内容更新
this.keywordDataSet = (keywordDataSet)((BindingSource)this.keywordDataGridView.DataSource).DataSource;
//将数据库与数据源同步
this.keywordTableAdapter.Update(this.keywordDataSet.keyword);
MessageBox.Show(this.keywordDataSet.keyword.Rows[0][2].ToString());
}
注意,个人发现DataGirdView在用户编辑某单元格内容后,必须点击别的控件已完成光标的迁移才完成编辑,进而将界面数据与数据源同步。楼主也是因为这个问题,一直误以为自己界面上修改的数据没有同步到数据园中去。这对于用户操作而言很麻烦,因此在保存按钮中加入this.keywordDataGridView.CurrentCell = null;从而自动移除单元格中的光标,完成编辑。
this.Validate();
this.inputBindingSource.EndEdit();
//同步数据到数据库
this.inputTableAdapter.Update(this.sortDataSetinput.input);
this.keywordTableAdapter.Update(this.keywordDataSet.keyword); 方式之后
第一次EndEdit事件结束之后DataGridView控件中的数据变化了,数据库没有同步变化
第二次EndEdit事件结束之后数据库的数据才变化搞不清啥么问题