none
Selbst erstellte Klasse wie ein Control auf ein Formular ziehen ... RRS feed

  • Frage

  • Ich habe eine hier eine selbstentwickelte Klasse.

    AUsserdem habe ich schon einige Erfahrungen mit UserControls gesammelt.

     

    Ich hätte nun gerne , daß ich einen Verweis auf die selbstentwickelte Klasse erstellen kann, indem ich ein Symbol aus der Toolbox auf das Formular ziehe.

    Ich stelle mir das so vor, wie beim Timer-Control oder beim SerialPort-Control. Beide Controls tauchen nicht auf dem Formular selbst aud, sondern werden untrhalb desselben angeordnet.

    Allerdings habe ich noch nicht herausgefunden, wie ich es anstelle, dass meine Klasse als eine Art Control akzeptiert wird. Es funktioniert jednefalls nicht, indem ich versuche der Toolbox die Dll der selbstentwickelten hinzuzufügen.

     

    Kann mir jemand helfen ?

    Samstag, 4. Dezember 2010 17:09

Antworten

  • Hallo Nico,

    Ich hätte nun gerne , daß ich einen Verweis auf die selbstentwickelte Klasse erstellen kann, indem ich ein Symbol aus der Toolbox auf das Formular ziehe.

    Ich stelle mir das so vor, wie beim Timer-Control oder beim SerialPort-Control. Beide Controls tauchen nicht auf dem Formular selbst aud, sondern werden untrhalb desselben angeordnet.

    Timer und SerialPort sind als sogenannte Komponenten implementiert. Dazu musst Du Deine Klasse von System.ComponentModel.Component ableiten, statt von UserControl.

    Allerdings habe ich noch nicht herausgefunden, wie ich es anstelle, dass meine Klasse als eine Art Control akzeptiert wird. Es funktioniert jednefalls nicht, indem ich versuche der Toolbox die Dll der selbstentwickelten hinzuzufügen.

    Beschreibe bitte genauer, was Du machst und was "nicht funktioniert".


    Thorsten Dörfler
    Microsoft MVP Visual Basic
    vb-faq.de
    Sonntag, 5. Dezember 2010 09:12
    Moderator
  • Hallo Nico,

    Component ist unterhalb von Control angesiedelt und dient als Basis für alle Elemente,
    die selbst keine visuelle Darstellung haben.
    Detaillierter beschrieben wird es unter Programmieren mit Komponenten

    Was das Icon in der Toolbox angeht, läuft das auch dort via ToolboxBitmapAttribute .

    Gruß Elmar

    Montag, 6. Dezember 2010 10:42
    Beantworter

Alle Antworten

  • Hallo Nico,

    für VB2008:

    1. Extras > Toolboxelemente auswählen

    2. Jetzt öffnet sich ein Dialogfeld

    3.Jetzt Durchsuchen betätigen

    4. Deine DLL suchen und mit OK bestätigen

    5. Jetzt befindet sich Dein Steuerelement in der Toolbox und kannst es in Deine Form ziehen

    schöne Grüße Ellen


    Ich benutze/ I'm using VB2008 & VB2010
    Samstag, 4. Dezember 2010 17:32
  • Hallo Nico,

    Ich hätte nun gerne , daß ich einen Verweis auf die selbstentwickelte Klasse erstellen kann, indem ich ein Symbol aus der Toolbox auf das Formular ziehe.

    Ich stelle mir das so vor, wie beim Timer-Control oder beim SerialPort-Control. Beide Controls tauchen nicht auf dem Formular selbst aud, sondern werden untrhalb desselben angeordnet.

    Timer und SerialPort sind als sogenannte Komponenten implementiert. Dazu musst Du Deine Klasse von System.ComponentModel.Component ableiten, statt von UserControl.

    Allerdings habe ich noch nicht herausgefunden, wie ich es anstelle, dass meine Klasse als eine Art Control akzeptiert wird. Es funktioniert jednefalls nicht, indem ich versuche der Toolbox die Dll der selbstentwickelten hinzuzufügen.

    Beschreibe bitte genauer, was Du machst und was "nicht funktioniert".


    Thorsten Dörfler
    Microsoft MVP Visual Basic
    vb-faq.de
    Sonntag, 5. Dezember 2010 09:12
    Moderator
  • @Thorsten: Erstmal vielen Dank.

    Die selbstprogrammierte Klasse ist natürlich nicht von ...Components abegleitet. Das werde ich als nächstes tun.

     

    Dementsprechend kommt beim Auswählen der Toolboxelemente und Anklicken der DLL eine Fehlermeldung.

     

    Ist sonst noch etwas zu beachten ? Ein Icon kann ich wahrschleinlich wie bei einem UserControl definieren - oder ?

     

    Noch einen schönen 2. Advent

    Sonntag, 5. Dezember 2010 16:19
  • Hallo Nico,

    Component ist unterhalb von Control angesiedelt und dient als Basis für alle Elemente,
    die selbst keine visuelle Darstellung haben.
    Detaillierter beschrieben wird es unter Programmieren mit Komponenten

    Was das Icon in der Toolbox angeht, läuft das auch dort via ToolboxBitmapAttribute .

    Gruß Elmar

    Montag, 6. Dezember 2010 10:42
    Beantworter