2014-11-03 6 views

답변

0

황금률은 약 RichTextBoxes어떤 형식을 가지고 일단 에 직접 Text을 변경하지 않습니다.

사용하려면 AppendText을 사용하고 변경하려면 Select, Cut, Copy & Paste.. 방법을 사용하여 형식을 유지해야합니다! 여러 사용자가 코드를 여러 번 호출해야합니다 바늘, 난 두려워 들어

string needle = "\r\r"; // only one possible cause of empty lines 

int p1 = richTextBox1.Find(needle); 
while (p1 >= 0) 
{ 
    richTextBox1.SelectionStart = p1; 
    richTextBox1.Select(p1, needle.Length); 
    richTextBox1.Cut(); 
    p1 = richTextBox1.Find(needle); 
} 

..

+0

정말 고마워요. 이 코드는 완벽하게 작동합니다. – Zain

1

당신은 그것의 RTF 텍스트에서 빈 줄을 제거 시도 할 수 있습니다. 아래에 주어진 샘플 코드가 도움이 될 것입니다.

String[] allLines = richTextBox1 
        .Rtf 
        .Split(new string[] { Environment.NewLine },StringSplitOptions.None); 

dynamic linesWithoutEmptyLines = from itm in allLines 
           where itm.Trim() != "\\par" 
           select itm; 

richTextBox1.Rtf = string 
        .Join(Environment.NewLine, linesWithoutEmptyLines); 

텍스트 서식을 유지하고 모든 빈 줄을 제거합니다.

+0

+1은'Environment.NewLine'이 좋은 생각이라는 가정하에'\\ par'-1을 포함합니다. 그것은 거의 없다 .. – TaW