2012-07-11 2 views
0

아래 코드를 사용하여 패널에 폼을로드하는 중입니다. 주 윈도우의 크기가 조절되면 폼의 크기가 조정되지 않습니다.패널의 크기 조정 폼이 작동하지 않습니다.

frm = new frmShopFloorMonitor(); 
      frm.TopLevel = false; 
      frm.Dock = DockStyle.Fill; 
      frm.AutoSize = true; 
      pnlMain.Controls.Add(frm); 
      pnlMain.Dock = DockStyle.Fill; 
      frm.Show(); 
      frm.BringToFront(); 

제안 사항?

1)가에있는 메뉴 스트립을 추가

+0

왜 양식을 패널에로드합니까? 양식의 내용이 사용자 정의 컨트롤이되면 패널에로드하거나 폼에 필요한 경우 좋지는 않습니까? 이것에 대한 –

+0

그 이유는 당신이 무엇을 의미하는지의 예를해야합니까, 내가 MDI 부모에 리본 컨트롤을 가지고 아이의 제목 표시 줄, 리본 컨트롤 아래에 표시 나는 위의 코드를 발견 할 필요가있다? – Neo

+0

패널 안의 양식을 보여주는 것이 올바른 방법이라고 생각하지 않습니다. 초점 같은 문제에 직면하지 않았습니까? 필자가 제시 한 해결책은 제목 표시 줄을 원하지 않는다고 가정했기 때문에 양식을 사용하지 않고 해당 양식의 컨트롤 만 사용하는 것이 좋습니다. 분명히 원하는 것은 아닙니다. –

답변

0

http://officeribbon.codeplex.com/ 대신 내가 다음, 다른 해킹을 MDIParent와 자식 관계를 고수하고 할 선택했다 :

은 리본 컨트롤은 여기에있는 하나입니다 ControlBox, MaximizeBox, MinimizeBox, ShowIcon,하여 ShowInTaskBar 3) 없음으로 MDIChild 폼 프레임 테두리 변경 : MDIParent 형태 거짓 2)에 그 표시 값 변화가 false로 MDIChild 형태에서 다음을 변경한다.

이렇게하면 제목 표시 줄없이 최대화 된 하위 창을 만들 수있었습니다!

+2

"나는 다른 방법으로"원래의 질문에 대답하지 않습니다. –

+0

@HansPassant도 목적지까지 거꾸로 걷지는 않지만 여전히 거기에 도착합니다! 다른 사람이 문제를 해결할 수있는 경우 질문에 대한 답변이 아직 열리지 않습니다. – Neo

0

차트에 도킹 문제가 있고 크기가 조정되었습니다.

// The chart was docked at chart.Bottom at start-up. 
private void Form_Resized(object sender, EventArgs e) 
{ 
    Size size = Size; 
    if(size.Width >= 100 && size.Height >= 120) 
    { 
      Size chartsize = new Size(size.Width - 12, size.Height - 115); 
      chart.Size = chartsize; 
    } 
} 

은 어떻게 생각하는 방법을 작동하지 않았다,하지만 일부 시도 후 chart.Dock = DockStyle.Fill;chart.Dock = DockStyle.Bottom;를 삽입 일했다.

private void Form_Resized(object sender, EventArgs e) 
{ 
    Size size = Size; 
    if(size.Width >= 100 && size.Height >= 120) 
    { 
      Size chartsize = new Size(size.Width - 12, size.Height - 115); 
      chart.Size = chartsize; 
      chart.Dock = DockStyle.Fill; 
      chart.Dock = DockStyle.Bottom; 
    } 
} 
관련 문제