DataGridView的剪切功能实现

问题描述

剪切是先对选中的单元格的值进行复制privatevoid剪切toolStripMenuItem4_Click(objectsender,EventArgse){Clipboard.SetDataObject(this.dataGridView1.CurrentCell.Value.ToString());}然后要删除选中的单元格的内容,可是不知道怎么删除,希望高手能够帮忙一下,谢谢!

解决方案

解决方案二:
理解错误!DataGridView是需要和虚拟数据库捆绑起来的吧(DataSet)你把DataGridView只需看作是一个容器就好,直接删除DataSet中的数据.就可以删除DataGridView中的数据了.你要是看不明白我给你写一段代码.usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;//引入和数据库连接的命名空间usingSystem.Data.SqlClient;namespaceDateBookForm{publicpartialclassTest:Form{publicTest(){InitializeComponent();}//刷新次数privateintLoadNum=2;//创建SqlConnection对象SqlConnectioncon=newSqlConnection("Server=.;DataBase=Test;uid=sa;pwd=sa");//创建DataSetDataSetds=newDataSet();//引入SqlDataAdapter;SqlDataAdapteradapter;///<summary>///窗体加载时///</summary>///<paramname="sender"></param>///<paramname="e"></param>privatevoidTest_Load(objectsender,EventArgse){FillSet();}///<summary>///DataSet填充方法///</summary>privatevoidFillSet(){//在刷新次数是第一次的时候访问数据库并且添加到DataSet中if(LoadNum==0){con.Open();//使用SqlDataAdapteradapteradapter=newSqlDataAdapter("select*fromusers",con);adapter.Fill(ds);adapter.Update(ds);//给DataGirdView捆绑数据dataGridView1.DataSource=ds.Tables[0];//判断是否有数据if(dataGridView1.Rows.Count>=1){MessageBox.Show("填充成功!");}con.Close();}}///<summary>///点击删除按钮///</summary>///<paramname="sender"></param>///<paramname="e"></param>privatevoidbutton1_Click(objectsender,EventArgse){try{//选中的行是1的时候if(dataGridView1.SelectedRows.Count==1){//删除数据dataGridView1.Rows.Remove(dataGridView1.SelectedRows[0]);///////////////////////////////////////////////////////////////////////////////以下为附加代码,可用可不用,作用是根据DataGirdView的现有数据,更新数据库.SqlCommandBuilderbuilder=newSqlCommandBuilder(adapter);adapter.Update(ds);}else{MessageBox.Show("请从新选择!");}}catch(Exceptionex){MessageBox.Show(ex.Message);}}}}

完美实现你要的功能,注意注释.我写的很详细了.
解决方案三:
privateintLoadNum=2;//改成privateintLoadNum=0;//Load方法最后一段LoadNum++;

抱歉,刚才测试的时候忘记了~~现在纠错来了...
解决方案四:
复制好后,将相应内容从DataGridView中Remove掉(行或某[些]单元格若要与数据库同步,可考虑使用CommandBuilder(与sql结合较好)
解决方案五:
回复一楼的朋友:我知道DataGridView是和数据集绑定的,我已经绑定填充好了的。数据已经在DataGridView控件上显示了。我的意思是我在单元格中选中了一个值,然后利用菜单项里的‘剪切’把单元格里的值给剪掉,这一个功能的实现。//删除数据dataGridView1.Rows.Remove(dataGridView1.SelectedRows[0]);你这不是把整个选中的行给删掉了吗?我要删的是单元格的值不是整个数据行,谢谢!三楼的朋友:你能告诉我DataGridView怎么定位到我随意选中的一个单元格吗?
解决方案六:
那就改为.dataGridView1.SelectedCells[0].Value=null;

解决方案七:
谢谢你的回复,但是dataGridView.selectedCells[intindex]index表示说选单元格的索引号可是剪切是随便的选择单元格,根本就没有固定单元格的索引号的。我甚至用这个算法都报错privatevoid剪切toolStripMenuItem4_Click(objectsender,EventArgse){Clipboard.SetDataObject(this.dataGridView1.CurrentCell.Value.ToString());//先复制for(intcounter=0;counter<dataGridView.SelectedCells.count;counter++)//然后删除{if(ClipBoard.GetText()==dataGridView.SelectedCells[i].Value.ToString()){this.BindingSource.Remove(dataGridView.SelectedCells.Value)}}}
解决方案八:
有没有人有解决的方法啊~帮忙一下吧!谢谢了!

时间: 2024-10-29 02:12:54

DataGridView的剪切功能实现的相关文章

iOS UIWebView实现禁止用户复制剪切功能_IOS

前言 在APP的混合模式开发,Android开发中有WebView作为混合模式开发的桥梁,当然在IOS中也同样有一个 UIWebView 组件来作为混合模式开发的桥梁,用过UIWebView组件的开发者都知道,当UIWebView加载显示HTML页面时,组件本身提供了一些系统默认的交互行为,这篇文章给大家分享的是iOS UIWebView实现禁止用户复制剪切功能,下面来一起看看. 示例代码 // 控制器实现此方法 - (BOOL)canPerformAction:(SEL)action with

html5 canvas画布,如何实现剪切功能?

问题描述 html5 canvas画布,如何实现剪切功能? 用铅笔抑或是涂鸦的形式在画布上画上东西,想要剪切画布上的一部分,可以实现对剪切部分的拖动.网上关于canvas画布的资料不多,哪位能够帮帮忙呀. 解决方案 妈咪妈咪妈咪和啊啊啊啊啊

datagridview如何实现剪切功能啊

问题描述 点击按钮就剪切选中行,-0-winform中哦 解决方案 解决方案二:没有,自己做,点击后,记住id,或者取出row对象,然后删除界面这一行,粘贴时,根据id去数据库select,成功后,彻底删除数据库记录解决方案三:引用1楼bdmh的回复: 没有,自己做,点击后,记住id,或者取出row对象,然后删除界面这一行,粘贴时,根据id去数据库select,成功后,彻底删除数据库记录 只是将选中行拷贝到剪切板然后把哪一行的值设成空,不用操作数据库..解决方案四:你自己的思路这不是很清晰吗?将

用DataGridView实现树形功能,但我功能要求更多如下(请各位帮忙看一下,小女子不胜感激):

问题描述 用DataGridView实现,关注中,我也要类似的功能,但我功能要求更多:工单号BOM号主件号关联SN号A1B1B-01C-01D-01A2B2B-02C-02D-02A3B3B-03C-03D-03A3B4B-04C-04D-04知者请回答,小女子不胜感激!若有相关代码请附上一份,谢谢. 解决方案 解决方案二:工单号BOM号主件号关联SN号A1B1B-01C-01D-01F1F-01F-02F-03G1G-01G-02G-03A2B2B-02C-02D-02E1E-01E-02E-

android 复制 粘贴 剪切功能应用_Android

网上有很多复制粘贴的文章,只是放到自己的程序中不知道如何处理,现在寻得一可行方法如下: Android的剪切板(ClipboardManager) 注意:导包的时候 API 11之前: android.text.ClipboardManager API 11之后: android.content.ClipboardManager 复制代码 代码如下: /** * 实现文本复制功能 * @param content */ public static void copy(String content

php基于CodeIgniter实现图片上传、剪切功能_php实例

本文实例为大家分享了codeigniter 图片上传.剪切,控制器类,供大家参考,具体内容如下 <?php defined('BASEPATH') OR exit('No direct script access allowed'); class Index extends MY_Controller { function __construct(){ parent::__construct(); $this->load->helper(array('form', 'url')); }

android 复制 粘贴 剪切功能应用

网上有很多复制粘贴的文章,只是放到自己的程序中不知道如何处理,现在寻得一可行方法如下: Android的剪切板(ClipboardManager) 注意:导包的时候 API 11之前: android.text.ClipboardManager API 11之后: android.content.ClipboardManager 复制代码 代码如下: /** * 实现文本复制功能 * @param content */ public static void copy(String content

按钮完成复制和剪切功能

 <SCRIPT language=JavaScript> function copy(ob){ var obj=findObj(ob); if (obj) {  obj.select();js=obj.createTextRange();js.execCommand("Copy");} } function cut(ob){ var obj=findObj(ob); if (obj) {  obj.select();js=obj.createTextRange();js.

剪切的快捷键是什么

剪切的快捷键是什么 1.剪切全屏的剪切快捷键 相信大家应该都知道,在我们的电脑键盘上,有一个可以剪切全屏的快捷键,这个快捷键就是"PrintScrSysrq",这个键的位置一般是在回格键的上面的.非常的好找,这个键可以剪切整个电脑屏幕的画面,剪切完之后就可以按Ctrl+V黏贴.但是相对来说是比较麻烦的,因为有时候只需要剪切一小部分的画面,那么这个键剪切之后还要在电脑的画本里进行裁剪比较麻烦. 2.剪切部分的快捷键 如果只是想要剪切一部分的内容,可以使用Alt+PrintScreenSy