Winforms – 在面板内填充用户控件
我是winforms的新手,我想做的是一个简单的forms:
-
在我的表格中有一个小组。
-
该面板链接到用户控件
-
用户控件应该填充面板。
这是我的表格:
public Form1() { InitializeComponent(); UserControl1 userControl = new UserControl1(); panel1.Controls.Add(userControl); userControl.Anchor = ((AnchorStyles)((((AnchorStyles.Top | AnchorStyles.Bottom) | AnchorStyles.Left) | AnchorStyles.Right))); userControl.Dock = DockStyle.Fill; }
不工作 – >控制doest伸展
试试这个,
public Form1() { InitializeComponent(); panel1.Dock = DockStyle.Fill; UserControl1 userControl = new UserControl1(); userControl.Dock = DockStyle.Fill; panel1.Controls.Add(userControl); }
userControl.Dock = DockStyle.Fill;
应该在添加到panel1之前调用。
您还需要在UserControl中设置控件的Anchor
属性,以根据面板中的usercontrol拉伸来拉伸它。
喜欢。
Public Sub UserControl1() //This call is required by the designer. InitializeComponent(); //Add any initialization after the InitializeComponent() call. Label1.Anchor = AnchorStyles.Top; Label2.Anchor = AnchorStyles.Right; Label4.Anchor = AnchorStyles.Bottom; Label3.Anchor = AnchorStyles.Left; End Sub
注意: userControl.Dock = DockStyle.Fill;
伸展只有usercontrol它自己不控制在用户控件内。 要拉伸用户控件的控件,您需要相应地设置Dock
和Anchor
属性。
您还需要停靠用户控件。 停靠面板使其停靠到表单而不是UserControl
。
userControl.Dock = DockStyle.Fill;