1
TextBlock에 약 100.000 자의 Html 코드 문자열을로드하는 아주 간단한 프로그램을 만들려고했습니다.WPF가 일반적인 Windows Forms보다 느리거나 100 배 이상 빠릅니다.
텍스트 블록 자체는 ScrollViewer에
<ScrollViewer Margin="0,75,0,0">
<TextBlock Name="textBlock1"></TextBlock>
</ScrollViewer>
나는 창문에서 동일한 형성 한 TextBox 컨트롤입니다.
문서를 스크롤하려고하면 CPU가 50 % (듀얼 코어, 그래서 코어 당 100 %)로 실행되는 동안 약 0.25 초 뒤쳐지고 더 많은 메모리 (170 메가 비트 이상)가 사용됩니다. .
Windows Form 응용 프로그램의 텍스트를 스크롤 할 때 프로세서 사용량을 15 % 미만으로 유지하면서 15MB로 일정하게 유지됩니다.
정상입니까 아니면이를 개선하기 위해 어떤 조치를 취할 수 있습니까?
여기서 TextBox의 성능이 개선되는 이유는 무엇입니까? – Justin
@Justin TextBox의 성능이 정확한 이유를 잘 모르겠다. 내 답변은 테스트에서 파생되었습니다. TextBox는 렌더 할 수있는 것, 평범한 텍스트라는 점에서 복잡하지 않으므로 TextBox가 빠르다 고 가정합니다. TextBlock은 다양한 색상, 글꼴, 크기 및 텍스트 장식으로 블록 \ 런을 렌더링 할 수 있습니다. –