2017-12-21 18 views
0

Gibt es eine Möglichkeit, ein Steuerelement wie ein Panel, und Einfügen mehrerer anderer Komponenten wie ein Label in es?Mehrere Steuerelemente auf ein einzelnes Steuerelement C# winforms

Ich habe ein benutzerdefiniertes Steuerelement erstellt und einige Steuerelemente aus der Toolbox in [Designer] hinzugefügt, obwohl diese Elemente beim Einfügen des benutzerdefinierten Steuerelements in das Hauptprojekt nicht sichtbar sind.

Antwort

1

Ich habe es endlich herausgefunden.

Grundsätzlich

  • machen eine neue custom control
  • Dann (in den Designer des frisch Custom Controls hergestellt) aus der Toolbox einige Elemente hinzufügen, wie ein Etikett. Sie werden nur als Boxen angezeigt.
  • Schließlich gehen Sie zum Code des benutzerdefinierten Steuerelements und fügen Sie
    this.Controls.Add(label1) hinzu. Ich fand das in den Designer des Formulars , um ein Steuerelement in ein anderes einzufügen.

MultiControl.cs:

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

und hier den Designer-Code:

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

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

Wenn Ihre Benutzersteuerung und Ihr Hauptprojekt beide zu derselben Lösung gehören, wird das Benutzersteuerelement oben in der Designer Toolbox automatisch angezeigt.

Wenn sich Ihr Benutzersteuerelement jedoch in einer anderen Lösung befindet und Ihr Hauptprojekt einen Verweis auf die DLL enthält, müssen Sie das Steuerelement manuell der Toolbox hinzufügen.

Wenn der Designer in Ihrem Hauptprojekt geöffnet ist, klicken Sie mit der rechten Maustaste auf die Toolbox und wählen Sie Wählen Sie Elemente ....

Klicken Sie in .NET Framework-Komponenten auf Durchsuchen, und wählen Sie die DLL des Benutzersteuerelements aus.

Klicken Sie auf OK.

Klicken Sie auf OK.

Alle öffentlichen Steuerelemente in Ihrer Baugruppe sollten jetzt in der Toolbox sichtbar sein.

+0

Dank für Ihre Antwort. Obwohl ich eigentlich versuche, ein Steuerelement wie ein "Panel" zu erstellen und mehr Elemente in das Panel zu legen. So würde dieses eine Steuerelement ein Panel mit mehreren Labels als eine Baugruppe werden. Obwohl sie alle in derselben Lösung sind. – Dextroy

+0

@Dextroy Ob das Steuerelement ein zusammengesetztes Steuerelement (z. B. Ihres) oder etwas rein gerendert ist, ist das Verfahren identisch – MickyD

Verwandte Themen