Winforms 패널 대 Java 스윙 패널
문제
Java Swing에서는 패널을 패널 등에 삽입 할 수 있으며 응용 프로그램의 모든보기에 새로운 창을 구축하거나 컨트롤을 제거하고 추가하는 데 엉망이 될 필요가 없습니다.
패널 Clas sin c#이 있지만 '패널 양식'을 만들거나 기본적으로 패널과 그 내용물의 양식 디자이너 양식을 볼 수 없습니다.
그런 다음 어떻게해야합니까?
해결책
일반적으로 나는 단지 서로 다른 형태를 돌려있다. 그런 다음 다음 함수를 사용하여 도킹 한 서브 포름을 만듭니다.
static class FormUtil
{
static public void showForm(Form sender, Control reciever)
{
sender.ControlBox = false;
sender.FormBorderStyle = FormBorderStyle.None;
sender.ShowInTaskbar = false;
sender.TopLevel = false;
sender.Visible = true;
sender.Dock = DockStyle.Fill;
reciever.Controls.Clear(); //clear panel first
reciever.Controls.Add(sender);
}
}
그런 다음 부모 양식의 패널 안에 양식을 도킹해야 할 때마다 다음과 같습니다.
FormUtil.showForm(new SomeForm(), this.splitContainer1.Panel1);
이를 통해 양식 제작 중 일부를 다른 디자이너에게 위임 할 수 있습니다. 나에게 매력처럼 작용하고, 더 나은 방법이라면 듣는 것을 좋아합니다.
다른 팁
실제로 패널 컨트롤을 사용하여 도크 속성을 채울 수 있습니다. 그렇게하면 패널이 양식의 전체 캔버스가됩니다. 그런 다음 필요에 따라 코드 뒤에 또는 양식 디자이너를 통해 하위 패널을 추가 할 수 있습니다.
디자이너 표면과 같은 패널을 기본적으로 제공하는 사용자 컨트롤의 개념이 있습니다. 원자 형태 (재사용 할 수 있음)를 만들어 상속 할 수있는 것으로 등록 할 수는 없습니다.
제휴하지 않습니다 StackOverflow