Hallo zusammen,
ich bin immer noch bei meinem neuen Control und habe da mal ein generelles Problem bzw. Fragen dazu.
1. Wie kann ich in der Sub New mitbekommen, ob es das Steuerelement schon auf der Form (also hier mal ein kleines Testprg.) gibt, oder ob ich es gerade neu über die Toolbox auf die Form einfüge?
Warum ich frage ist folgender Grund.
Die Sub New wird ja bei beiden Aktionen (vorhandes und neues Control) durchlaufen. Soweit habe ich das mit der Sub New schon herausbekommen.
Diese Zeile mit "InitializeComponent()" bewirkt ja nur, das im Hintergrund die beiden Steuerelemente, die mein neues Control darstellen sollen, in die Form eingefügt und mit bestimmten Eigenschaften versehen werden.
nimmt man die Zeile raus, dann ist auch die Form sofort leer. Soweit auch klar.
Jetzt habe ich eine "Standardwerte_einstellen-Eigenschaft" mir eingebaut, die das Aussehen umstellen kann (natürlich sollte dies nur in der Entwurfsansicht passieren). Dazu habe ich die gesamten Eigenschaften per jeweiliger SUB
so eingestellt, wie ich es für die gerade gewählte Standardwerte_einstellen-Eigenschaft vorsehen möchte. Das Umschalten in der Entwurfsansicht funktioniert auch schon soweit.
Mein bisherigen Versuche sind daran gescheitert, dass mir beim aktualisieren der DLL die bisher eingefügten Controls die Einstellungen überschrieben wurden.
Da ich in den Grundeinstellungs-SUB's nun natürlich auch diese Eigenschaft auf Ihren gewünschten Wert setze, bekomme ich immer diesen Grundeinstellungswert eingestellt. Soweit so logisch. Also die Zeile deaktiviert.
Jetzt steht diese Eigenschaft mit keinem Wert da. Da die Auswahlmöglichkeiten über eine ENUM-Auflistung laufen, habe ich hier den Fehler gefunden. Die Auflistung muss mit 0 beginnen anstatt mit 1.
Bisher habe ich mit HandleStandardwerte_einstellen_Changed(sender As Object, e As EventArgs) Handles Me.Standardwerte_einstellen_Changed gearbeitet. Dann habe ich es mal mit ..._CLick bzw. ..._DoubleClick versucht, aber leider
ohne Erfolg.
2. Gibt es irgendwie eine Möglichkeit, dass meine bisherigen Einstellungen in der Entwurfsansicht im Testprg. bestehen bleiben, aber trotzdem alle Eigenschaften richtig und vollständig darstehen?
Reagiert werden soll also nur, wenn ich tatsächlich aktiv die jeweilige Eigenschaft ändere.
3. Gibt es vielleicht auch gute einfach erklärte Bücher, die ich mir hier mal ansehen könnte/sollte?
Vielleicht kann mir ja auch jemand mal genau den internen Ablauf eines solchen Controls erklären. Welche Sub's bzw. Ereignisse wie Paint, Resize o. ä. kann/muss ich hier ansprechen bzw. auswerten?
Erst einmal vielen Dank, mal sehen was ihr schreibt.
Vielen Dank schon einmal im Voraus.
Volker
ich bin immer noch bei meinem neuen Control und habe da mal ein generelles Problem bzw. Fragen dazu.
1. Wie kann ich in der Sub New mitbekommen, ob es das Steuerelement schon auf der Form (also hier mal ein kleines Testprg.) gibt, oder ob ich es gerade neu über die Toolbox auf die Form einfüge?
Warum ich frage ist folgender Grund.
Die Sub New wird ja bei beiden Aktionen (vorhandes und neues Control) durchlaufen. Soweit habe ich das mit der Sub New schon herausbekommen.
Diese Zeile mit "InitializeComponent()" bewirkt ja nur, das im Hintergrund die beiden Steuerelemente, die mein neues Control darstellen sollen, in die Form eingefügt und mit bestimmten Eigenschaften versehen werden.
nimmt man die Zeile raus, dann ist auch die Form sofort leer. Soweit auch klar.
Jetzt habe ich eine "Standardwerte_einstellen-Eigenschaft" mir eingebaut, die das Aussehen umstellen kann (natürlich sollte dies nur in der Entwurfsansicht passieren). Dazu habe ich die gesamten Eigenschaften per jeweiliger SUB
so eingestellt, wie ich es für die gerade gewählte Standardwerte_einstellen-Eigenschaft vorsehen möchte. Das Umschalten in der Entwurfsansicht funktioniert auch schon soweit.
Mein bisherigen Versuche sind daran gescheitert, dass mir beim aktualisieren der DLL die bisher eingefügten Controls die Einstellungen überschrieben wurden.
Da ich in den Grundeinstellungs-SUB's nun natürlich auch diese Eigenschaft auf Ihren gewünschten Wert setze, bekomme ich immer diesen Grundeinstellungswert eingestellt. Soweit so logisch. Also die Zeile deaktiviert.
Jetzt steht diese Eigenschaft mit keinem Wert da. Da die Auswahlmöglichkeiten über eine ENUM-Auflistung laufen, habe ich hier den Fehler gefunden. Die Auflistung muss mit 0 beginnen anstatt mit 1.
Bisher habe ich mit HandleStandardwerte_einstellen_Changed(sender As Object, e As EventArgs) Handles Me.Standardwerte_einstellen_Changed gearbeitet. Dann habe ich es mal mit ..._CLick bzw. ..._DoubleClick versucht, aber leider
ohne Erfolg.
2. Gibt es irgendwie eine Möglichkeit, dass meine bisherigen Einstellungen in der Entwurfsansicht im Testprg. bestehen bleiben, aber trotzdem alle Eigenschaften richtig und vollständig darstehen?
Reagiert werden soll also nur, wenn ich tatsächlich aktiv die jeweilige Eigenschaft ändere.
3. Gibt es vielleicht auch gute einfach erklärte Bücher, die ich mir hier mal ansehen könnte/sollte?
Vielleicht kann mir ja auch jemand mal genau den internen Ablauf eines solchen Controls erklären. Welche Sub's bzw. Ereignisse wie Paint, Resize o. ä. kann/muss ich hier ansprechen bzw. auswerten?
Erst einmal vielen Dank, mal sehen was ihr schreibt.
Vielen Dank schon einmal im Voraus.
Volker