programing

사용자 컨트롤과 Windows Form

firstcheck 2021. 1. 15. 08:16
반응형

사용자 컨트롤과 Windows Form


Visual Studio-C #에서 사용자 정의 컨트롤과 Windows 폼의 차이점은 무엇입니까?


매우 간단하게 말하십시오.

사용자 컨트롤은 재사용 가능한 사용자 지정 구성 요소를 만드는 방법입니다. 사용자 정의 컨트롤은 다른 컨트롤을 포함 할 수 있지만 양식에서 호스팅해야합니다.

Windows Forms는 사용자 컨트롤을 포함한 컨트롤의 컨테이너입니다. 사용자 컨트롤과 유사한 특성이 많이 포함되어 있지만 주된 목적은 컨트롤을 호스트하는 것입니다.


공통점 많으며 둘 다 ContainerControl에서 파생됩니다. 그러나 UserControl은 자식 창으로 설계되었으므로 컨테이너에 배치해야합니다. 양식은 부모가없는 최상위 창으로 설계되었습니다.

TopLevel 속성을 false로 설정하여 실제로 Form을 자식 창으로 바꿀 수 있습니다.

public partial class Form1 : Form {
    public Form1() {
        InitializeComponent();
        var child = new Form2();
        child.TopLevel = false;
        child.Location = new Point(10, 5);
        child.Size = new Size(100, 100);
        child.BackColor = Color.Yellow;
        child.FormBorderStyle = FormBorderStyle.None;
        child.Visible = true;
        this.Controls.Add(child);
    }
}

Windows 양식은 사용자 컨트롤을위한 컨테이너입니다.


가장 큰 차이점은 form.show는 다른 창을 제공하는 반면 usercontrol에는 부모없이 팝업되는 것과 같은 기능이 없다는 것입니다. 나머지는 Scrollablecontrol에서 파생 된 beind와 같은 두 컨트롤 모두에서 동일합니다.

참조 URL : https://stackoverflow.com/questions/2299339/user-control-vs-windows-form

반응형