不是很明白需求,这样?richTextBox1.SelectedText = string.Empty.PadLeft(richTextBox1.SelectionLength, ' ');

解决方案 »

  1.   

    String..::.PadRight 方法 (Int32, Char) 參數
    totalWidth
    型別:System..::.Int32產生的字串中的字元數,等於原始字元加上任何其他填補字元的數目。 paddingChar
    型別:System..::.CharUnicode 填補字元。 傳回值
    型別:System..::.String新的 String,對等於這個執行個體,但是靠左對齊,並在右側填補必要的 paddingChar 字元,以建立 totalWidth 的長度。如果 totalWidth 小於這個執行個體的長度,則為與這個執行個體相同的新 String。 範例string str = "forty-two";
    char pad = '.';Console.WriteLine(str.PadRight(15, pad));    // Displays "forty-two......".
    Console.WriteLine(str.PadRight(2,  pad));    // Displays "forty-two".
      

  2.   

     this.rtbBlnrTemp.Text= string.Empty.PadRight(this.rtbBlnr.SelectionLength, ' ');
    这样做文本长度是够了,但是rtbBlnrTemp没有和rtbBlnr一样的行数,达不到用空格字符取代显示的效果;
    如:
    替换前:
    “该数组中的每个元素成为文本框控件中的一行文本。如果文本框控件的 Multiline 属性设置为 true,并且文本中出现换行符,则换行符后的文本被添加到该数组的一个新元素中,并显示在另一行上。

    替换后:

                                                                      并显示在另一行上。
      

  3.   

    StringBuilder sb=new StringBulder();
    sb.Append(' ',intLenght);
    这里可以产生intLenght长度的空格字符串
    再使用string.Replace方法替换就行了
      

  4.   

    告诉我这个例子中,你的“换行符”在哪?3楼的需求明显与你顶楼的需求不一致,把你的需求描述清楚,“编辑的一段文本”指的是什么,当前被选中的文本,还是当前控件中所有文本?richTextBox1.SelectedText = Regex.Replace(richTextBox1.SelectedText, @"(?m).", " ");
      

  5.   

    具体需求是:把richTextBox1的内容全部复制到richTextBox2,选中richTextBox1的部分内容,使richTextBox2的相关部分使用长度相等的空格替换,并且要求richTextBox1和richTextBox2的行数要一致,文本长度一致
      

  6.   

    我用下面的代码已经实现了选中的部分红色显示,但是就是把选中的部分用空格替换不了,不知道是为什么?很奇怪!
                StringBuilder sb = new StringBuilder();
                int length = this.rtbBlnr.SelectionLength;
                sb.Append(' ', length);
                //MessageBox.Show("空格长度"+sb.Length.ToString()+":"+sb.ToString());
                this.rtbBlnrTemp.Rtf = this.rtbBlnr.Rtf;
                int G_int_index = 0;
                if ((G_int_index = this.rtbBlnrTemp.Text.IndexOf(this.rtbBlnr.SelectedText, G_int_index)) == -1)
                {
                    MessageBox.Show("没有找到结果!");
                    G_int_index = 0;
                }
                else
                { 
                    this.rtbBlnrTemp.Select(G_int_index, length);
                  this.rtbBlnrTemp.SelectionColor = Color.Red;
                  this.rtbBlnrTemp.Text.Replace(this.rtbBlnrTemp.SelectedText, sb.ToString());
                }