pointer auf Form1 !



  • huhu,

    ich möchte von meiner Form2 ein Attribut aus meiner Form1 ändern!
    dazu brauche ich einen pointer auf meine Form1:

    unsafe private Form1* myForm;
    

    es kommt allerdings folgender fehler:

    Fehler	1	Es ist nicht möglich, einen Zeiger für den verwalteten Typ ("BClient.Form1") zu deklarieren oder dessen Adresse oder Größe abzurufen.
    

    warum? ich hab das projekt auf /unsafe umgestellt!

    danke schonmal 🙂



  • 1. unsafe hat hier nix verloren.

    2. C# unterscheidet nicht in Zeiger, Referenzen usw. und braucht diese auch nicht.

    3. Alles was Du brauchst ist

    class Form2
    {
       public Form1 myotherform;
    }
    

    und weist diesem dann Form1 zu nachdem sie erzeugt wurde, meinetwegen:

    // Pseudocode
    
    Form1 form1 = new Form1();
    
    Form2 form2 = new Form2();
    form2.myotherform = form1;
    

    Guter Rat: Wenn Du C# wirklich lernen willst, vergiss alles was Du über C++ weisst, denn C# ist von C++ viel mehr verschieden als es durch die ähnliche Syntax erscheinen mag.



  • achso!
    ist ja viel genialer 🙂

    ja danke - bin gerade dabei die .NET welt zu entdecken... gefällt mir
    sehr gut.

    danke!


Anmelden zum Antworten