拖动将文本拖放到TextBox和特殊字符中

时间:2012-02-25 13:16:51

标签: c# winforms drag-and-drop

我为TextBox控件提供了拖放支持,但是这里有charsets(特殊字符)的一些问题。

如果我将该文字放在我的控件上:

  

Cześć,chciałbymprzetestowaćspecjalnepolskie znaki。

变成:

  

CzeĹ>ć,chciaĹ,bymprzetestowaćspecjalne polskie znaki。

以下是DragDrop的代码:

private void textBox_DragDrop(object sender, DragEventArgs e)
{
    if (e.Data.GetDataPresent(DataFormats.Text))
    {
        TextBox txt = (TextBox)sender;
        txt.Text = (string)e.Data.GetData(DataFormats.Text);;
    }
    else e.Effect = DragDropEffects.None;
}

当我粘贴数据时,一切似乎都没问题。

2 个答案:

答案 0 :(得分:3)

您是否尝试过DataFormats.UnicodeText而不是DataFormats.Text

答案 1 :(得分:1)

来自这篇文章(http://stackoverflow.com/questions/420659/unicode-characters-not-showing-in-system-windows-forms-textbox)

  1. 尝试使用RichTextBox而不是复选框,看看它是否有效 - 这样你就知道至少你正确地读取了数据。