[c#] 시스템 스크롤바의 현재 너비를 어떻게 알 수 있습니까?
아시다시피 Display Properties-> Appearance-> Advanced-> Item : ScrollBar에서 스크롤바 너비의 너비를 사용자 지정할 수 있습니다. 기본값은 17입니다. 그러나 이것이 항상 사실이라고 가정 할 수는 없습니다.이 값을 검색 할 수 있습니까?
답변
System.Windows.Forms.SystemInformation
반원들을 보세요 : HorizontalScrollBarHeight
그리고 VerticalScrollBarWidth
.
답변
세로 스크롤 막대 너비
System.Windows.Forms.SystemInformation.VerticalScrollBarWidth;
답변
ScrollableControl
스크롤 막대의 크기를 뺀 크기를 알고 싶다면 가장 쉬운 방법은 Control.ClientSize
속성 을 사용하는 것 입니다.
로부터 문서 :
컨트롤에있는 클라이언트 영역의 높이와 너비를 가져 오거나 설정합니다. 컨트롤의 클라이언트 영역은 컨트롤의 경계에서 스크롤 막대 , 테두리, 제목 표시 줄 및 메뉴 와 같은 비 클라이언트 요소를 뺀 것 입니다.
답변
컨트롤의 ClientSize 속성을 건너 뜁니다. 적어도 VS2013에서는 스크롤바가 ClientSize에 포함되어 있습니다.
너비가 304이고 세로 스크롤바가있는 RichTextBox를 포맷했을 때 클라이언트 크기 너비는 300이었으며 테두리 만 고려했습니다.
스크롤 막대 너비를 얻으려면 System.Windows.Forms.SystemInformation.VerticalScrollBarWidth를 사용하십시오.