2017-09-08 1 views
-3

어떻게 richTextBox에 줄 바꾸기를 추가합니까?WindowsForm RichTextBox에 여러 줄을 인쇄 할 수 없습니다.

+0

'richtextbox.MultiLine = true'? 상단 부분에서 텍스트를 계속 대체하면'='대신에'+ ='(덧 쓰기)가됩니다. (덮어 쓰기) – EpicKip

+0

여기에 너무 많은 것들이 명확하지 않습니다. 인쇄물로 무엇을 의미합니까? 그냥 richtexbox에 텍스트를 표시하고 싶거나 프린터에 절판 인쇄를 말하는 것입니까? _lines_ 변수는 어디서 구합니까? 거기에 몇 줄이 있습니까? – Steve

+0

@ 스티브가 말한 것을 덧붙여서, 제목의 문제는 당신이 묻는 두 가지 질문과 많이 다르지만 나 일 수 있습니다. – EpicKip

답변

0

하지만를 RichTextBox는 아무것도

당신이 실제로 각각의 새로운 문으로 RichTextBox의 전체 텍스트를 덮어 인쇄하지 않을 것입니다.

어떻게 foreach 루프에서 richTextBox1을 인쇄 할 수 있습니까?

당신은 라인으로 라인을 작성하는 대신 AppendText 방법을 사용할 수 있습니다 : 당신은 정말 모든 말에는 텍스트가없는 경우

richTextBox1.AppendText("------------------------------" + Environment.NewLine); 
richTextBox1.AppendText("  ----Decrypt #----" + Environment.NewLine); 
richTextBox1.AppendText("------------------------------" + Environment.NewLine); 

foreach (string line in lines) 
{ 
    string t = Decipher(line, key); 
    // Use a tab to indent each line of the file. 
    richTextBox1.AppendText("\t" + t + Environment.NewLine); 
} 

PS, 당신의 방법에 공백 하나를 반환 Decipher 것 같다 또는 빈 문자열.

+0

감사! 이것은 많은 도움을 주며 코드가 작동하도록합니다. – Firzanah

0

할 수 있습니다 하나의 StringJoin 라인,이 같은 :

private void richTextBox1_TextChanged(object sender, EventArgs e) { 
    if (clickedButton3.Enabled) { 
     richTextBox1.Text = 
     "------------------------------\n" + 
     "  ----Decrypt #----\n" + 
     "------------------------------\n\n" + 
      string.Join("\t", lines.Select(line => Decipher(line, key))); 
    } 
    } 

우리가 foreach하지만 Linq를 원하지 않는 볼 수 있듯이 우리를 위해 루프를 할 which'll Join.