• 微软原版系统

  • 一键重装系统

  • 纯净系统

  • 在线技术客服

魔法猪系统重装大师 一键在线制作启动 U 盘 PE 系统 用一键重装的魔法拯救失去灵魂的系统
当前位置:首页 > 教程 > 电脑教程

C#调用剪贴板后清空的问题Clipboard.Clear()解决方案

时间:2015年04月02日 15:40:31    来源:魔法猪系统重装大师官网    人气:15082

在C#中我用Clipboard.Clear(),清空了剪贴板,可是我复制几次之后,剪贴板上的内容也会复制好几次呢。求教,多谢!

private void button2_Click(object sender, EventArgs e)
{
Clipboard.Clear();
for (int i = 0; i < listBox1.Items.Count; i++)
{

s += listBox1.Items[i].ToString() + '\n';

}

try
{

Clipboard.SetDataObject(s, true, 1, 9999);


}
catch (Exception ex)
{
MessageBox.Show("出错了:{0}",ex.Message);
}
finally { MessageBox.Show("已复制!"); }

回答一、把你的s声明放到方法里面去,我的理解是s没有释放,所以上次复制的内容会残留在s中,所以你在复制时,s的变量执行的是上次的数据+你复制的数据,因此你的复制结果是越来越多。而你虽然清空了剪贴板,但是两次的数据又会重新被你放到了剪贴板中,因此出现了所说的现象。

回答二、同意楼上,而且你把s的释放动作和剪切版清空的动作放到finally里面最好。

上面的回答没有测试过,不过我是把Clipboard.SetDataObject(s, false);冒似就不会出现剪贴内容重复的问题了。

调用,剪贴板,后,清,空的,问题,Clipboard.Cle
栏目:电脑教程 阅读:1000 2023/12/27
Win7教程 更多>>
U盘教程 更多>>
Win10教程 更多>>
魔法猪学院 更多>>

Copyright © 2015-2023 魔法猪 魔法猪系统重装大师

本站发布的系统仅为个人学习测试使用,请在下载后24小时内删除,不得用于任何商业用途,否则后果自负,请支持购买微软正版软件。

在线客服 查看微信 返回顶部