문제

나는 윈도우 폼 ToolStripPanel 는 동적으로 추가하는 새로운 ToolStrips 니다.각 컨트롤는 ToolStripItems 는 동적으로 추가하여 그것은(대부분 ToolStripButtons).

하고 싶은 모든 ToolStrips 맞에 하나의 행만큼 당신이 볼 수있는 모든 ToolStripItems 에서 각 컨트롤.는 경우 추가하는 새로운 ToolStripItem 을 컨트롤 원인 오버플로우가 발생하고 싶 툴 스트립의 끝에서 행하여 아래로 이동하는 새 행이 있습니다.시간보고 싶은 오버플로우 버튼을 경우 컨트롤는 많은 항목할 수 있는지에 적합한 폭의 형태입니다.

나는 원하는 이의 기본 동작하지 않으면 사용자가 수동으로 이동 컨트롤.사용자 이동 컨트롤,다음 내가 원하는 기존의 오버플로우(예:오버플로우 버튼과 드롭다운 선택이)동작이 발생할 수 있습니다.나는 가정 사용자가 확인 될 것입니다 이 기본 Winforms 오버플로 동작하는 경우 그들은 위치 도구 모음에 자신이다.

는 경우 새로운 동적 도구 모음에 추가한 후에는 사용자의 위치를 변경하는 것들고 싶은 새로운 도구 모음에 추가할 권의 마지막 툴 스트립에 있습니다.이 도구 모음이 있어야 업데이트 오버플로 동작(예:를 사용하는 새로운 행할 수 없는 경우에 맞는)사용자가 수동으로 위치를 변경합니다.

나는 몇 가지고 연구한 성:

  • 이처럼 보인 그것이 있어야의 간단한 문제 변경 ToolStripLayoutStyle, 지만,이하지 않는 것 같습니다.(에서 최고,새로운 행을 만들면 오버플로우가 버튼을 보여주는 모든 ToolStrips 에서 특정 행)이 있습니다.
  • MSDN 문서"방법:관리 컨트롤 오버플로우에서는 윈도우 폼"보이기만 커버의 경우 오버플로우가 버튼을 발생합니다.
  • LayoutCompleted 이벤트에서는 컨트롤 보이는 가능한 사용을 조정할 것을,그것은 다음과 같이 있어야한다는 쉬운 방법입니다.
  • 을 만드는 사용자 정의 LayoutEngine 처럼 보인다는 잔인한 이후에 내장 된 매우 가까운 이야기를 준비했습니다.

나는 쉽게 해결책?

업데이트:아직도 찾고 좋은 솔루션입니다.그것은 보인다 LayoutCompleted 로 가능합니다.문제는 그것으로만은 그것이 여러 번 호출.하나는 시간을 말한다 ToolStripItem 에서 오버플로우 지역 후 즉시는 주요 지역에서,그래서 그것은 보이지 않는 안전함을 확인 한 시간 경우에서 오버플로우가 발생합니다.

도움이 되었습니까?

해결책 2

In the end,지가 있다고 생각하지 않은 쉽게 좋은 솔루션입니다. 이 스레드 그것은 분명 ToolStrips 지 않은 정말 위해 설계되었는 동적 시나리오으로 우선 순위입니다.

한 독특한 접근 방식을 설정하는 것입의 컨트롤 하는 크기의 버튼이 있습니다.이는 작업을 시작할 것으로 오버플로우 같은 설명하지만,심지어 이 문제를 가장자리를 가진 경우입니다.

최고의 접근 방식을 발견했는 모든 것을 가능하게 할 것이 좋은 느낌을 얻을 수에 대한 어떤 크기의 도구 모음을 사전에 있어야한다고 다음 위치에 ToolStripPanel 사용 방법입니다.는 경우에 당신은 합리적인 생각을 앞서는 시간,그것은 아마 확인을 더 추가하는 경우 추가 버튼이 나중에 그들은 겁에서 오버플로 영역입니다.

다른 팁

1)항목을 추가하면 컨트롤

2)비의 폭 컨트롤 금액에 남아있는 공간입니다.이 ToolStripPanel 는 행[]제공하는 것입니다 무엇을 말할지 마지막 줄은 무엇 toolstrips 에 있는니다.추가는 그들의 폭이 빼기에서 그들을 폭의 패널이 있습니다.

3)추가로 새로운 컨트롤 패널을 사용하여 가입 방법 중 하나를 지정하는 마지막 행(에 맞는 경우)또는 하나의 행이 높은(지 않는 경우).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top