多个控件到单个控件上 c# winforms

Multiple Controls onto a single control c# winforms

有什么方法可以制作一个像 Panel 的控件,并在其中插入几个像 Label 的其他组件吗?

我制作了一个自定义控件,并将工具箱中的一些控件添加到它的 [Designer] 中,尽管将自定义控件插入主项目时这些项目不可见。

如果您的用户控件和主项目都属于同一个解决方案,那么用户控件将自动.

出现在设计器工具箱的顶部

但是,如果您的用户控件在另一个解决方案中并且您的主项目引用了 dll,那么您需要将控件添加到工具箱手动

在您的主项目上打开设计器,右键单击工具箱并选择选择项目...

在 .NET Framework 组件中,单击浏览并select您的用户控件的 DLL。

单击“确定”。

单击“确定”。

程序集中的所有 public 控件现在应该在工具箱中可见。

我终于明白了。

基本上

  • 制作一个新的custom control
  • 然后(进入新制作的自定义控件的设计器)添加一些 工具箱中的元素,如标签。它们只会显示为方框。
  • 最后进入自定义控件的代码,添加
    this.Controls.Add(label1)。我在设计器中发现了这个 窗体将控件插入另一个窗体。

MultiControl.cs:

public partial class MultiControl : Panel
{
    public MultiControl()
    {
        InitializeComponent();
        this.Controls.Add(label1);
    }
 } 

这里是设计师代码:

partial class MultiControl
{
    private System.Windows.Forms.Label label1;

    private void InitializeComponent()
    {
        this.label1 = new System.Windows.Forms.Label();
    }
}