2009-03-13 6 views
0

일반적으로 매우 긴 문자열 (라이센스 계약 등)을 일반적으로 표시하는 여러 줄의 텍스트 상자가 있으며, 표시 주위에는 사용자가 " (화살표 또는 스크롤 상자를 클릭하지 않고 스크롤 상자 위나 아래를 클릭), 마지막 "페이지"에서 첫 번째 줄은 이전 페이지의 마지막 줄이어야하며 텍스트 이를 수용하기 위해 빈 줄이 덧붙여집니다.Compact Framework에서 여러 줄 텍스트 상자의 표시 줄 수 얻기

나는 문자열의 크기와 텍스트의 줄 수를 알 수 있지만 줄 수를 검색 할 수 있다는 것을 알고있다. 은 텍스트 상자에 한 번에으로 표시되어 어느 정도 계산할 수있다. 텍스트를 채워야합니까? messages P/Invoke를 통해 보낼 수있는 목록을 보면 표시되는 행 수를 요청하는 메시지가 표시되지 않습니다.

답변

2

글꼴 높이를 계산하여 한 번에 표시 할 수있는 최대 줄 수를 얻고 그만큼 텍스트 높이를 나눌 수 있습니다.

올바른 생각 ... 올바른지 확실하지 않지만 일부 테스트를 수행하고 일치하는지 확인하십시오.

public SizeF MeasureString( string text, Font font )

+0

이 좋은 시작이다 :

글꼴 높이를 얻으려면. 분명히 위쪽과 아래쪽에 약간의 패딩이 있기 때문에 정확한 수학은 아닙니다. 다른 크기의 텍스트 상자로 시도해보아야합니다. – bjanaszek

+0

다행히 도울 수 있어요 :) – Stormenet

관련 문제