2014-07-08 4 views
3

.NET의 mdi 부모 폼 내에서 최대화 상태로 mdi 하위 폼의 제목 표시 줄을 숨기는 데 문제가 있습니다. 여기 enter image description herevb.net mdi 자식 제목 표시 줄이 숨어 있지 않음

는 새로운() 내 MDI 자식 폼의 : 내가 대신 FormWindowState.MaximizedDockStyle.None을 시도했습니다

Public Sub New(ByRef pParent As Form) 
    MyBase.New() 
    Me.MdiParent = pParent 
    fParent = pParent 
    Me.Text = "" 
    Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None 
    Me.WindowState = FormWindowState.Normal 
    Me.MinimizeBox = False 
    Me.MaximizeBox = False 
    Me.ControlBox = False 
    Me.ShowIcon = False 
    Me.ShowInTaskbar = False 
    Me.SizeGripStyle = Windows.Forms.SizeGripStyle.Hide 
    Me.Dock = DockStyle.Fill 
End Sub 

하지만 여기

내가 디자인에 & 실행 시간이 무엇 결과는 같았다. 내가 부모 속성 IsMdiContainer = True을 설정 한 디자인에

Protected Sub SetActiveScreen(ByVal pChildForm As tWizardForm) 
    If pChildForm Is Nothing Then Exit Sub 
    If fActiveScreen Is pChildForm Then Exit Sub 

    Dim hg As New tHourglass 
    Try 
     fActiveScreen = pChildForm 
     fActiveScreen.Show() 
     fActiveScreen.BringToFront() 
     For Each aForm In MdiChildren 
      If aForm IsNot fActiveScreen Then aForm.Hide() 
     Next 
     fActiveScreen.Execute() 
     UpdateCaption() 
    Finally 
     hg.Dispose() 
    End Try  
End Sub 

: 부모 컨테이너에

, 나는이 기능을 사용하여 다른 아이에서 변경 될 수 있습니다.

내가 잘못했거나 놓친 부분은 어디입니까? 자식 제목 표시 줄에있는 이런 종류의 이중 단추는 정말 이상합니다. 최대화 버튼 중 하나를 클릭하면 같은 결과로 끝납니다 : enter image description here .

결과 제목 표시 줄 단추는 클릭 할 수 없습니다.

도움 주셔서 감사합니다.

+0

분명히 MDI가 마음에 들지 않습니다. 그래서 그것을 사용하지 마십시오. 그 "자식 폼"은 당신이 도킹하는 사용자 컨트롤이 될 수 있습니다. –

+0

@ 한스 패전트 (Hans Passant) 이것은 실제로 할 수있는 최선의 방법 일 수 있습니다. 동시에 여러 개의 "자식 폼"을 표시하지 않을 것이며 나는 항상 이들이 최대화되기를 바랍니다. 내가 볼 수 없었던 명백한 것을 지적 해 주셔서 감사합니다! – Joel

+0

나는 C# .NET에서 같은 문제가있다. – displayname

답변

1

시도 자식 폼의 Load 이벤트에

Me.MaximizeBox = False 

이동이 내 프로젝트에서 일 것 같았다.

+0

나는 이걸 혼자서 움직이려 고 노력했다.ControlBox = False'를로드하지만 결과는 같습니다. – Joel

0

하위 양식에 대해 다음 설정을 시도하십시오.

Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None 
+0

그것은 이미 내가 자식 폼 New()에서하고있는 것입니다. – Joel

1

정확한 답변은 여기에 있습니다. 그것은 당신의 문제를 해결할 것입니다.

MenuStrip MDI에 양식을 추가하고이 보이지 않게 (가시 = false)를 나는이있어

0

에 의해 작업에 : 설정

  1. 아이 독 채우기 위해
  2. 는 자식을 설정 WindowState를 Normal로 변경 (마법의 탄환)
  3. Focus 메서드가 아닌 Show 메서드 사용
관련 문제