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]

... 46  47  [48]  49  50  51  52  53  54  55  56  57  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
1417정성태2/25/201328597.NET Framework: 363. ASP.NET AJAX PageMethods - ASPX.cs의 static 메서드를 AJAX로 호출파일 다운로드1
1410정성태1/31/201332102.NET Framework: 362. C# - 닷넷 응용 프로그램에서 Sybase DB 사용 [1]파일 다운로드1
1409정성태1/30/201335970.NET Framework: 361. C# - 공유기 관리 웹 페이지 인증 [4]파일 다운로드1
1408정성태1/29/201330931.NET Framework: 360. C# - 닷넷 응용 프로그램에서 DB2 Express-C 데이터베이스 사용 (2) [1]파일 다운로드1
1407정성태1/29/201329336.NET Framework: 359. C# - 닷넷 응용 프로그램에서 DB2 Express-C 데이터베이스 사용 (1)
1405정성태1/16/201345365.NET Framework: 358. C# - 닷넷 응용 프로그램에서 MySQL(MySqlConnector) 사용 [7]파일 다운로드1
1403정성태1/14/201332649.NET Framework: 357. .NET 4.5의 2GB 힙 한계 극복
1401정성태1/11/201330832.NET Framework: 356. (공개키를 담은) 자바의 key 파일을 닷넷의 RSACryptoServiceProvider에서 사용하는 방법 [2]파일 다운로드1
1399정성태1/9/201325602.NET Framework: 355. 닷넷 환경이 왜 C/C++보다 느릴까요? [8]
1395정성태12/26/201221461.NET Framework: 354. x64 - AspCompat과 STA COM 개체가 성능에 미치는 영향
1394정성태12/25/201222791.NET Framework: 353. x86 - AspCompat과 STA COM 개체가 성능에 미치는 영향
1393정성태12/25/201223370.NET Framework: 352. x64에서 필수로 지정하도록 바뀐 STAThread 특성 [2]
1391정성태12/21/201226517.NET Framework: 351. JavaScriptSerializer, DataContractJsonSerializer, Json.NET [3]파일 다운로드1
1390정성태12/20/201224784.NET Framework: 350. String 데이터를 Stream으로 변환하는 방법 [2]
1389정성태12/12/201222957.NET Framework: 349. .NET Thread 인스턴스로부터 COM Apartment 유형 확인하는 방법파일 다운로드1
1388정성태12/12/201224055.NET Framework: 348. .NET x64 응용 프로그램에서 Teb 주소를 구하는 방법파일 다운로드1
1381정성태12/5/201227983.NET Framework: 347. C# - 프로세스(EXE) 수준의 Singleton 개체 생성 [2]파일 다운로드1
1380정성태11/28/201237984.NET Framework: 346. 닷넷 개발자에게 Node.js의 의미 [17]
1379정성태11/26/201231205.NET Framework: 345. C# 부호(+, -)에 대한 비트 변환 [1]
1377정성태11/19/201226068.NET Framework: 344. 닷넷 프로파일러 - ICorProfilerInfo::GetILFunctionBody 함수 버그
1373정성태11/13/201225490.NET Framework: 343. VB.NET 어셈블리의 .NET Reflector 소스 코드를 분석할 때 알아두면 좋은 사항
1371정성태10/31/201228164.NET Framework: 342. Python의 zip과 with 문 context를 C#과 비교하면. [3]파일 다운로드1
1361정성태10/12/201223464.NET Framework: 341. .NET COM+ 를 Managed/Native 클라이언트에서 각각 호출했을 때의 콜 스택 비교 [4]파일 다운로드1
1360정성태10/9/201227837.NET Framework: 340. Windows Server 2012 - .NET Framework 1.x 미지원
1358정성태9/27/201227286.NET Framework: 339. .NET Profiler 주의 사항 - 하나의 exe 프로세스 내에 다중 .NET 런타임 사용
1354정성태9/19/201225295.NET Framework: 338. .NET CLR GC 시간 측정하는 방법파일 다운로드1
... 46  47  [48]  49  50  51  52  53  54  55  56  57  58  59  60  ...