文本框剪贴板中的额外行返回

时间:2012-12-18 03:26:13

标签: c# .net textbox clipboard carriage-return

我创建了一个个人使用的“Word Merge”例程。当我将项目添加到我的3个文本框中,然后合并时,一切看起来都很好。但是当我复制到剪贴板时,还有额外的回车,我之前没有看到。有人可以帮忙吗?我附上了以下结果的代码和两张图片:

private void button25_Click(object sender, EventArgs e)
{
    char[] delimiterChars2 = { ',', ':', '|', '\n' };

    List<string> listBox1 = new List<string>(textBox_MergeList1.Text.Split(delimiterChars2));
    List<string> listBox2 = new List<string>(textBox_MergeList2.Text.Split(delimiterChars2));
    List<string> listBox3 = new List<string>(textBox_MergeList3.Text.Split(delimiterChars2));

    string outputDelimiter = "-";            

    var result = from s1 in listBox1
                 from s2 in listBox2
                 from s3 in listBox3
                 select s1 + outputDelimiter + s2 + outputDelimiter + s3;

    foreach (var item in result)
    {
        textBox_MergeListResults.Text = String.Join("\r\n", result);
    }

    Clipboard.SetText(textBox_MergeListResults.Text);
}

我很确定它与开头的分隔符分割有关,因为如果我只使用以下内容,我没有任何问题:

List<string> listBox1 = new List<string>() { "A", "B", "C" };
List<string> listBox2 = new List<string>() { "1", "2", "3" };
List<string> listBox3 = new List<string>() { "Dogs", "Cats", "Pigs" }; 

输出结果的图像:http://screencast.com/t/zu49GgOok1m

剪贴板结果图片:http://screencast.com/t/SqmJqFmqT

1 个答案:

答案 0 :(得分:1)

编辑:

在玩完游戏后回答聊天。

需要在\r\n上进行拆分。然后加入\r\n