DataGridView选择的内容拷贝至剪贴板代码

本文详细介绍了DataGridView控件的剪贴板交互功能,包括如何设置可复制模式,将选中部分数据拷贝至剪贴板,以及如何从剪贴板中粘贴数据并进行验证和处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DataGridView选择的内容拷贝至剪贴板代码, 
拷贝模式设定 
 

DataGridView1.ClipboardCopyMode= DataGridViewClipboardCopyMode.EnableWithoutHeaderText //设置可复制的模式 

其中DataGridView.ClipboardCopyMode 属性获取或设置一个值,该值指示用户是否可以将单元格的文本值复制到 Clipboard,以及是否包括行标题和列标题文本。 

命名空间: System.Windows.Forms

程序集: System.Windows.Forms(在 System.Windows.Forms.dll 中)

 选中部分拷贝  

Clipboard.SetDataObject(DataGridView1.GetClipboardContent()) //将控件选中的数据置于系统剪贴板中

 DataGridView粘贴

 代码

if (DataGridView1.CurrentCell.Value == null)

{

    return;

}

int insertRowIndex = DataGridView1.CurrentCell.RowIndex;

string pasteText=Clipboard.GetText();//从系统剪贴板中获取数据

if(string.IsNullOrEmpty(pasteText))

{

    return;

}

string[] lines=pasteText.Split('\r');//按行分组

bool isHeader=true;

foreach(string line in lines)

  

    if(isHeader)

    {

        isHeader=false;//当可复制模式中含有标题时的过滤操作

    }

    else

    {

        string[] vals=line.Split('\t');//按tab空格分组

        if (vals.Length - 1 != DataGridView1.ColumnCount)

        {

            throw new ApplicationException("列数错误");

        }

        DataGridViewRow row = DataGridView1.Rows[insertRowIndex];

        row.HeaderCell.Value=vals[0];

        for(int i=0;i<row.Cells.Count-1;i++)

        {

            row.Cells[i].Value=vals[(i+1)];

        }

        insertRowIndex+=1;

    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值