Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일

윈폼 TreeView - Bold 폰트 설정 후 텍스트가 잘리는 문제

말로 설명하기보다는 곧바로 현상을 보는 것이 이해가 빠를 것 같습니다. 우선, 다음과 같은 트리뷰에서,

treeview_node_bold_text_truncated_1.png

선택된 노드에 대해 다음과 같이 Bold 속성을 주게 되면,

treeView.SelectedNode.NodeFont = boldFont;

treeview_node_bold_text_truncated_2.png

보는 바와 같이 '8' 자 이후부터 짤려버렸습니다. 딱히, 이 현상에 대한 정확한 이유를 설명하는 글은 발견하지 못했습니다. 단지, 아래의 글에서 우회적인 해결 방법에 대한 단서를 발견할 수 있을 뿐이었습니다.

Bold NodeFont causes text to appear truncated
; http://www.eggheadcafe.com/software/aspnet/32319704/bold-nodefont-causes-text-to-appear-truncated.aspx

직접해보면, 특정 노드의 폰트에 대한 Bold 속성을 주기 전에 트리 레벨에서 Bold를 적용하고 다시 해제하면 되었습니다.

즉, 코드를 다음과 같이 변경해 주면 됩니다.

private void button1_Click(object sender, EventArgs e)
{
    treeView.Font = boldFont;
    treeView.SelectedNode.NodeFont = boldFont;
    treeView.Font = normalFont;
}

보면서도... 사실 왜 이것으로 해결이 되는지 납득이 잘 안 됩니다. ^^;



[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 4/11/2022]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2022-11-17 11시21분
[홍시] 덕분에 문제를 해결했네요 도움 감사드립니다.
[guest]

... 31  32  33  34  35  36  37  38  39  40  41  [42]  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
10803정성태6/2/201525411.NET Framework: 513. UWP(Universal Windows Platform) 응용 프로그램의 새로운 라이브러리 버전 관리 해법 [2]
10801정성태5/31/201529854.NET Framework: 512. async/await 사용 시 hang 문제가 발생하는 경우 - 두 번째 이야기 [3]
2913정성태4/30/201527205.NET Framework: 511. Build 2015 행사에서 소개된 (맥/리눅스/윈도우 용 무료) Visual Studio Code 개발 도구 [8]
2907정성태4/29/201519953.NET Framework: 510. 제네릭(Generic) 인자에 대한 메타데이터 등록 확인
2894정성태3/18/201521645.NET Framework: 509. ELEMENT_TYPE_MODIFIER의 조합
2888정성태3/17/201524204.NET Framework: 508. Visual Studio 빌드 - fatal error C1033: cannot open program database ''
2887정성태3/13/201521430.NET Framework: 507. CoreFx 빌드하는 방법
2884정성태3/12/201527831.NET Framework: 506. .NETCore = CoreFX + CoreCLR [5]
2883정성태3/10/201524893.NET Framework: 505. OpenCover 소스 코드 분석을 Visual Studio 2013에서 하는 방법 [1]
2882정성태3/10/201523683.NET Framework: 504. OpenCover 코드 커버리지 도구의 동작 방식을 통해 살펴보는 Calli IL 코드 사용법
2878정성태2/28/201528516.NET Framework: 503. == 연산자보다는 Equals 메서드의 호출이 더 권장됩니다. [3]파일 다운로드1
2877정성태2/28/201522257.NET Framework: 502. 연산자 재정의(operator overloading)와 메서드 재정의(method overriding)의 다른 점 - 가상 함수 호출 여부 [3]파일 다운로드1
2873정성태2/25/201538033.NET Framework: 501. FtpWebRequest 타입을 이용해 FTP 파일 업로드 [4]파일 다운로드1
2869정성태2/23/201521040.NET Framework: 500. struct로 정의한 값 형식(Value Type)의 경우 Equals 재정의를 권장합니다.파일 다운로드1
1865정성태2/20/201520753.NET Framework: 499. 특정 닷넷 프레임워크 버전 이후부터 제공되는 타입을 사용해야 한다면?
1864정성태2/18/201525619.NET Framework: 498. C#으로 간단하게 만들어 본 ASCII Art 프로그램 [2]파일 다운로드1
1862정성태2/18/201529619.NET Framework: 497. .NET Garbage Collection에 대한 정리 [6]
1861정성태2/18/201524853.NET Framework: 496. 마우스 커서가 놓인 지점의 문자열 얻는 방법 [1]파일 다운로드1
1860정성태2/18/201524780.NET Framework: 495. CorElementType의 요소 값 설명파일 다운로드1
1857정성태2/16/201523196.NET Framework: 494. 값(struct) 형식의 제네릭(Generic) 타입이 박싱되는 경우의 메타데이터 토큰 값파일 다운로드1
1856정성태2/15/201522016.NET Framework: 493. TypeRef 메타테이블에 등록되는 타입의 조건파일 다운로드1
1852정성태2/5/201523385.NET Framework: 492. .NET CLR Memory 성능 카운터의 의미파일 다운로드1
1848정성태2/4/201520218.NET Framework: 491. 닷넷 Generic 타입의 메타 데이터 토큰 값 알아내는 방법 [2]
1833정성태1/3/201528570.NET Framework: 490. System.Data.SqlClient는 SSL 3.0/TLS 1.0만 지원하는 듯! [3]
1826정성태12/11/201429438.NET Framework: 489. Socket.Listen에 전달된 backlog 인자의 의미 [6]
1825정성태12/11/201476876.NET Framework: 488. TCP 소켓 연결의 해제를 알 수 있는 방법 [10]파일 다운로드1
... 31  32  33  34  35  36  37  38  39  40  41  [42]  43  44  45  ...