标题:datagridview
只看楼主
bluestar567
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2010-2-2
结帖率:0
 问题点数:0 回复次数:3 
datagridview
C#winform 中在ACCESS中定义一个字段(是/否)在datagridview 中显示为checkbox如何删除选中的多行,删除ACCESS中相应的数据,DataGridView中也删除。
搜索更多相关主题的帖子: datagridview 
2010-12-05 18:16
c1_wangyf
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:7
帖 子:665
专家分:2832
注 册:2010-5-24
得分:0 
这应该是结合数据库的操作了,需要对选中的行进行判断(datagridview和access),然后执行数据库的delete和datagridview的remove或者removeat方法!!
2010-12-05 22:02
bluestar567
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2010-2-2
得分:0 
回复 2楼 c1_wangyf
能否提供代码
2010-12-06 15:43
c1_wangyf
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:7
帖 子:665
专家分:2832
注 册:2010-5-24
得分:0 
程序代码:
#region // 删除表中的空行
                    for (int i = dgleft.Rows.Count-1; i >=0; i--)
                    {
                        if ((Convert.ToString(dgleft.Rows[i].Cells[2].Value) == "" && Convert.ToString(dgleft.Rows[i].Cells[0].Value) == "") | dgleft.Rows[i].Cells[1].Value == null)  //如果最后一行是空行,将其删除---这里是我的代码,你根据自己的需要改一下
                        {
                            try
                            {
                                dgleft.SelectionMode = DataGridViewSelectionMode.FullRowSelect;//选择整行
                                dgleft.Rows[i].Selected = true;
                               
                                if (dgleft.Rows.Count > 0)
                                {
                                    deleteEntireRowToolStripMenuItem.Enabled = true;
                                    dgleft.Rows.Remove(dgleft.Rows[i]);
                                   
                                }
                                else
                                {
                                    deleteEntireRowToolStripMenuItem.Enabled = false;//这里是我的右键菜单,不用理会
                                }
                                dgleft.SelectionMode = DataGridViewSelectionMode.CellSelect;//取消选择整行

                            }
                            catch (Exception ex)
                            {
                                MessageBox.Show(ex.Message, "Tips", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            }
                        }
                  }
自己看一下括号是不是对的上,我是从我的代码里面考出来的,dgleft是datagridview的一个名字而已,希望哪能有帮助!!
刚才忘记删除数据库里面的了,因为不是非常清楚你的数据库,但是删除之前,一定先把数据库中需要删除的数据找出来,那么就需要到你自己动脑的时候了,如何找到正确的数据库--数据的某个字段是和其他的不重复的。



[ 本帖最后由 c1_wangyf 于 2010-12-6 16:25 编辑 ]
2010-12-06 16:22



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-327986-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.060261 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved