西西軟件園多重安全檢測下載網(wǎng)站、值得信賴的軟件下載站!
軟件
軟件
文章
搜索

首頁編程開發(fā)C#.NET → C# 調(diào)用剪貼板后清空的問題Clipboard.Clear()解決方案

C# 調(diào)用剪貼板后清空的問題Clipboard.Clear()解決方案

相關(guān)軟件相關(guān)文章發(fā)表評論 來源:本站整理時間:2010/11/29 14:40:04字體大。A-A+

作者:佚名點擊:509次評論:1次標(biāo)簽: Clipboard 剪貼板

  • 類型:抓圖工具大。4.8M語言:中文 評分:7.5
  • 標(biāo)簽:
立即下載

在C#中我用Clipboard.Clear(),清空了剪貼板,可是我復(fù)制幾次之后,剪貼板上的內(nèi)容也會復(fù)制好幾次呢。求教,多謝!

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("已復(fù)制!"); }

回答一、把你的s聲明放到方法里面去,我的理解是s沒有釋放,所以上次復(fù)制的內(nèi)容會殘留在s中,所以你在復(fù)制時,s的變量執(zhí)行的是上次的數(shù)據(jù)+你復(fù)制的數(shù)據(jù),因此你的復(fù)制結(jié)果是越來越多。而你雖然清空了剪貼板,但是兩次的數(shù)據(jù)又會重新被你放到了剪貼板中,因此出現(xiàn)了所說的現(xiàn)象。

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

上面的回答沒有測試過,不過我是把Clipboard.SetDataObject(s, false);冒似就不會出現(xiàn)剪貼內(nèi)容重復(fù)的問題了。

    相關(guān)評論

    閱讀本文后您有什么感想? 已有人給出評價!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過難過
    • 5 囧
    • 3 圍觀圍觀
    • 2 無聊無聊

    熱門評論

    最新評論

    發(fā)表評論 查看所有評論(1)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)