1

我有一个文本用户在 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 中输入了一些文本,例如:

丹尼你好黄色

然后我为新类创建实例并按我想要的方式取回单词列表。并使用 AppendText 将它们添加到 textBox2

Thep roblem 是 textBox2 中的文本将如下所示:

dannyhelloyellow

我希望它看起来和 textBox1 中的一样,包括空格:例如,在你好和黄色之间有 7 个空格,所以在 textBox2 中它看起来像:

丹尼你好黄色

我该怎么做 ?

4

1 回答 1

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);
于 2013-07-01T17:50:54.593 回答