如何从textBox1文本复制到textBox2包括空格?

时间:2013-07-01 17:46:54

标签: c# .net winforms

我有一个用户在textBox1中输入手册的文本 然后单击一个按钮,将文本从textBox1复制到textBox2,但在textBox2中,文本看起来像一个长字符串。

我希望在复制文本时,它还会复制单词之间的确切空格。

在我的新课程中,我将此代码放在顶部:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ScrambleRandomWordsTest
{
    class ScrambleTextBoxText
    {
        private static readonly Random RandomGen = new Random();
        private List<string> _words;
        private List<string> _scrambledWords;

        public ScrambleTextBoxText(List<string> textBoxList)
        {
            _words = textBoxList;
        }

然后在底部我有这个功能:

public List<string> scrambledTextBoxWords()
        {
            List<string> words = _scrambledWords;
            return words;
        }

然后在按钮点击事件的Form1中我有:

private void BtnScrambleText_Click(object sender, EventArgs e)
        {
            textBox1.Enabled = false;
            BtnScrambleText.Enabled = false;
            textBoxWords = ExtractWords(textBox1.Text);
            ScrambleTextBoxText scrmbltb = new ScrambleTextBoxText(textBoxWords);
            for (int i = 0; i < scrmbltb.scrambledTextBoxWords().Count; i++)
            {
                textBox2.AppendText(scrmbltb.scrambledTextBoxWords()[i]);
            }
        }

所以我在Form1中键入一些文本,例如:

danny你好黄色

然后我为新类创建实例,然后按照我想要的方式返回单词列表。 并使用AppendText

将它们添加到textBox2

Thep roblem就是在textBox2中文本看起来像:

dannyhelloyellow

我希望它看起来和textBox1中的相同,包括空格: 例如,在hello和yellow之间有7个空格,所以在textBox2中它看起来像:

danny你好黄色

我该怎么做?

1 个答案:

答案 0 :(得分:5)

最简单的方法是

textBox2.Text = String.Join(" ", scrmbtb.scrambledTextBoxWords());

使用您当前的解决方案

textBox2.AppendText(scrmbltb.scrambledTextBoxWords()[i] + " ");

如果这就是你的所有功能,你最好把你的班级变成类似的东西。

你有

private List<string> _scrambledWords;
public List<string> scrambledTextBoxWords()
{
    List<string> words = _scrambledWords;
    return words;
}

相同
public List<string> ScrambledTextBoxWords {get; private set;}

然后

textBox2.Text = String.Join(" ", scrmbtb.ScrambledTextBoxWords);