VS löscht Instanziierung von UserControl aus Designercode

  • C#
  • .NET 2.0

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von TRiViUM.

    VS löscht Instanziierung von UserControl aus Designercode

    Hallo liebe Community,

    da ich mir nicht sicher bin, ob ich etwas falsch mache, oder ob es ein Bug von Visual Studio (Community 2019) ist, möchte ich mal euch dazu befragen:

    Ich habe ein UserControl erstellt, welches mehrere Windows-Controls beinhaltet.
    Dieses UserControl habe ich dann insgesammt 6x auf meine Form gepackt.

    Nach ca. 2-3 mal öffnen des UserControls oder der Form, auf der sich das UserControl befindet (innerhalb VS) , kommt folgende Fehlermeldung:

    Das Formular lässt sich so natürlich auch nicht mehr öffnen.

    Ein Blick in den Designer-Code des Formulars verrät, das VS die Instanziierungen gelöscht hat, welche eigentlich so aussehen müsste:

    C#-Quellcode

    1. private void InitializeComponent()
    2. {
    3. //[...]
    4. this.processDisplay1 = new ProcessDisplay();
    5. this.processDisplay2 = new ProcessDisplay();
    6. this.processDisplay3 = new ProcessDisplay();
    7. this.processDisplay4 = new ProcessDisplay();
    8. this.processDisplay5 = new ProcessDisplay();
    9. this.processDisplay6 = new ProcessDisplay();
    10. //[...]
    11. }


    Zudem tauchen dann noch folgende Warnungen auf:


    Wenn ich die Instanziierung manuell wieder im Designer-Code ändere, kann ich das Formular wieder öffnen...bis das ganze wieder von Vorne losgeht.

    Gibt es dafür eine Erklärung? ?(

    Edit:
    Die UserControl-Klasse ist mit dem Schlüsselwort Internal versehen, könnte das eine mögliche Ursache sein?
    Und falls ja, warum?


    Danke & Gruß
    @TRiViUM Mach mal das UserControl Public.
    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!
    @RodFromGermanyJou, habbich. Bislang keine Fehlermeldungen.
    Warum könnte das ein Problem sein?

    Falls das die Lösung für das Problem ist, müsste ich mir was überlegen.
    Ich programmiere ne DLL, welche ein anders Tool verwendet und dort alle öffentlichen Funktionen ausliest.
    Da bekommt es natürlich auch alle "ungewollten" Funktionen mit, die man so auf ein Control anwenden kann, was von mir aus nicht gewünscht wäre...

    TRiViUM schrieb:

    Warum könnte das ein Problem sein?
    Weiß ich nicht, aber ich hatte das auch schon mal. ;)
    Probierma ob Friend auch geht, das sollte Dein Tool dann nicht lesen.
    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!
    @TRiViUM Jou, das ist so.
    Ich bin auch in C# unterwegs, hab aber nicht in Deinem Titel nachgesehen, sondern Frau Google befragt, was internal in VB.NET heißt. :thumbsup:
    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!