2009-05-20 6 views
0

패널이있는 양식이있는 응용 프로그램을 작성하고 있습니다. 패널에 다른 폼을 추가하면 추가 된 폼의 키보드 단축키가 작동을 멈추는 것을 보았습니다. 키보드 단축키가 작동하도록 어쨌든패널에 양식을 추가 할 때 키보드 단축키가 작동하지 않습니다. C#

MainMenu m = new MainMenu(); 
m.TopLevel = false; 
m.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; 
m.Dock = System.Windows.Forms.DockStyle.Fill; 
pnl.Controls.Add(m); 
m.Visible = true; 
pnl.ResumeLayout(); 

있나요 :

나는 다음과 같은 코드를 사용하고?

감사

답변

0

포커스 문제로 인한 것으로 나타났습니다.

이후로 양식을 사용자 정의 컨트롤로 변환하여 문제가 해결되었습니다.

+0

이것으로 무엇을 의미합니까? 당신은 정확히 무엇을 했습니까? 나도 같은 문제가있어. – Muers

1

내 첫번째 추측은 (그것이 완전히 추측)이 아니라 단지 부모를 할당하는 것보다, 자식 객체를 생성 할 때 상위/소유자를 전달해야한다는 것입니다 ... 당신이 우리에게 그 부분을 보여줄 수 당신의 코드? 또한

, 당신의 코드를 통해 반짝이기는하지만, 그것은 또 다른 형태의 내부 패널에 양식을 추가 ....

0

채우기 독 설정하는 MAINMENU를 들어,에 이상한 것 같다? 이는 지원되는 시나리오는 아닙니다. 솔직히 나는 예외를 던지지 않는다고 놀랍다. 이렇게하는 더 좋은 방법은 UserControls를 사용하는 것입니다.

+0

잘 작동합니다. 나는 이것을 과거 여러 번 사용했다. 유일한 것은 키보드 단축키가 작동하지 않는 것입니다. –

+0

지원되는 시나리오가 아닌 것을 어떻게 알 수 있습니까? –

+0

나는 어떤 식 으로든 명시 적으로 언급 한 문서를 찾을 수 없다는 것을 인정합니다. 그러나 Windows Forms에 대해 알고있는 내용을 토대로이 기능은 지원되지 않습니다. 특정 환경에서 작동하도록 만들 수 있다고해서 지원되는 것은 아니며 모든 기능이 올바르게 작동해야합니다. –

관련 문제