2017-02-22 1 views
2

큰 문자열 (20K 줄 * 각각 100 자)이 있습니다.거대한 문자열을 WinForm RichTextBox에 넣으십시오.

이 문자열을 RichTextBox (또는 이와 비슷한)의 Windows 양식 응용 프로그램에 배치해야합니다. 현재이 작업을 수행하는 데 40 초가 소요됩니다 (String 자체를 추가하는 데 40 초가 걸립니다). 여기

는 코드가
StringBuilder sb = Very_big_String_Builder_Object; 
string appendMe = sb.ToString(); 
uniqueOutput.SelectionStart = uniqueOutput.TextLength; 
uniqueOutput.SelectedText = appendMe; 

가 나는 또한 최악의 조금이었다
StringBuilder sb = Very_big_String_Builder_Object; 
string appendMe = sb.ToString(); 
uniqueOutput.Text = appendMe; 

을 시도 니펫을입니다.

.NET (최대 4.5) 내에 도움이 될만한 것이 있습니까?

+1

을 왜 한 번에 모든 것을 많은 정보를 표시해야합니까? 아무도 현실적으로 읽을 수는 없었습니다. – Equalsk

+0

각 페이지마다 20000 개의 행이있는 책을 읽고 싶습니까? 당연히 아니지. 왜 사용자에게 기대합니까? 페이징 또는 필터링을 사용하여 관련 부분 만 표시하십시오. –

+0

글쎄, 이상하게 보일지라도 사용자는 보통 프로세스를 변경하는 다른 몇 가지 프로그램과 파일로 가져갑니다. 파일로 출력 할 수는 있지만 파일을 저장하고 파일을 찾고 파일을 연 다음 복사하여 붙여 넣는 데 시간이 더 걸릴 수 있습니다. 또한 하나 이상의 출력이 있습니다. RichTextBox – TOMP

답변

1

사실 여러 줄에 텍스트 상자를 사용해보십시오 :

txtMulti.text = Very_big_String_Builder_Object.ToString; 
+1

가장 효과적인 해결책은 2 초 미만으로 시간을 단축했지만 Ctrl + A 클릭을 처리하기 위해 수신기를 만들어야했습니다. – TOMP

+0

단축키는 종종 문제가됩니다 - 다른 컨트롤/컨테이너를 확인하십시오 Ctrl-A를 캡처 할 수 있습니다. 메뉴 "표준 항목"은 종종 컨트롤 키를 빨아들입니다. – rheitzman

1

WordWrap 및 DetectUrls를 사용 중지하면 몇 초 정도를 절약 할 수 있습니다.

+0

이렇게하면 40 초에서 시간이 단축됩니다 30 초 ~ 35 초, 좋은 추천 – TOMP

관련 문제