UserControls im Designer einer Windows.Forms Anwendung aktualisieren

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von roepke.

    UserControls im Designer einer Windows.Forms Anwendung aktualisieren

    Hallo,

    ich habe eine UserControl DLL erstellt und die Objekte als Instanzen auch erfolgreich in einer WIdows.Forms Anwendung eingefügt.

    Entferne ich nun an einem der UserControls innerhalb der DLL z.B. eine Public Property oder füge eine neuen hinzu, muss ich das UserControl in der Forms Anwendung jedes Mal löschen und neu hinzufügen, damit dies im Designer übernommen wird.

    Alterativ muss ich den Designer selbst editieren.

    Gibt es irgendwo ein verstecktes Refresh/Update oder ähnliches, das eine Forms Anwendung veranlasst alle Controls mal neu einzulesen und den Designer entsprechend zu aktualisieren? Kann dazu nicht wirklich was brauchbare im WWW finden. Wenn ja, fürchte ich, dass gibt's nur in der Kaufversion von VisualStudio, ich nutze VB2010 Express.

    LG
    @roepke Normalerweise reicht es, die Projektmappe neu zu erstellen.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Danke für den Tipp.
    Leider gibt's in der Expressversion die Erstellen->Projektmappe neu erstellen, bzw. bereinigen Befehle nicht.
    Starte ich nur "Projektmappe erstellen" (das ist das einzige was mir angeboten wird) bekomme ich eine Meldung, dass mein Projekt eine Reihe von Fehlern hat, die ich bitte vorher zu beseitigen habe.
    Ich vermute eine Expresseinschränkung um eine Lizenzversion zu kaufen.
    Gibt's denn in der Lizenzversion ein Tastenkürzel dafür?
    Evtl. ist ja nur der Befehlseintrag entfernt, die Funktionalität im Hintergrund aber vorhanden.
    Ich zieh den Umstieg mal in Erwägung. 2017 hatte ich mir spaßeshalber schon mal installiert, mich bisher aber irgendwie gesträubt zu wechseln. Ich habe immer ein wenig Bauchweh dabei auf neue Versionen beim Entwickeln umzusteigen, solange ich mit der alten noch zu Rande komme. Ich arbeite viel mit Altera/Intel FPGA und da hat sich Quartus als Entwicklungsumgebung auch viele Jahre mit jeder neuen Version verschlimmbessert. Vom Gefühl her hatte ich allerdings den Eindruck, dass mein Projekt in VS2017 sauber zu kompiliern ging.
    @roepke Lösch den löschbaren Inhalt der obj- und bin-Verzeichnisse.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Auch im VS2017 werden die UserControl Properties nicht neu geladen/gesetzt wenn ich Erstellen->Bereinigen ausführe.
    Neu erstellen geht schon mal garnicht, da ich ja einen haufen Fehler gemeldet bekomme, weil sich in meinen UserControls die Privete Properties geändert haben.
    Im Ansicht-Designer lassen sich die Forms wegen ihrem instabilen Zustand auch nicht öffnen.
    Also gehe ich jetzt doch den Weg zu Fuß und entferne die nicht mehr verfügbaren Properties in den Designern manuell.

    roepke schrieb:

    Erstellen->Bereinigen
    bringt nix, dann eher Bereinigen -> Neu erstellen.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ich meine doch Menü Erstellen -> Projekt bereinigen. MIr ist schon klar, dass ich erst bereinigen und dann erstellen muss.
    Bereinigen bingt aber nix. Nur eine Meldung dass es erfolgreich war. Ändert aber nichts an der Tatsache, dass die alten, nicht mehr verfügbaren Properties immer noch im Designer drin sind.
    @roepke Öffne mal die FormX.Designer.vb und überzeuge Dich davon, dass diese Controls dem Container der FormX hinzugefügt werden.
    Wie das aussehen muss, siehst Du Dir in der FormY.Designer.vb einer funktionierenden Form an.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    FormX.Designer.vb Dateien werden scheinbar nur neu geschrieben, wenn ich im FormX z.B. ein Control etwas verschiebe und FormX neu speichere.
    Alle anderen Versuche ein Neuschreiben zu erzwingen sind bisher fehlgeschlagen.
    Habe jetzt alle PublicProperties rausgelöscht, bzw. aktualisiert indem ich es genau so gemacht habe.