Konzept private Defizite ?



  • Hallo,

    ich erstelle mir ein Control das einen Button hat.

    Dieses Control ziehe ich jetzt auf einen Form drauf.

    Wenn ich jetzt von der Form aus versuche auf das Control zuzugreifen kann ich das nicht weil der Button private ist. Ein Button hat ca 100 Eigenschaften. Muss ich wirklich 100 get/set Methoden schreiben um die grösse,die farbe,den Hintergrund, die Schrift usw und so fort zu ändern und nur um dem Konzept der Geheimhaltung genüge zu tun ?



  • Wusstet ihr übrigens dass ich den private Mechanismus aushebeln kann,
    wenn ich eine foreach schleife verwende und da ich ja einen alias verwende problemlos auf den Button Zugriff hab ?



  • Hä?

    Mal davon abgesehen, dass du in den Eigenschaften auch festlegen kannst, dass der Button public sein soll und nicht private, welchen Sinn hat es denn alle Eigenschaften eines Button setzen zu wollen?

    Vieleicht ist es in deinem Fall nicht so eine gute Idee den Button noch amel auf ein extra Control zu setzen.

    Grüsse



  • Con@n schrieb:

    Hä?

    Mal davon abgesehen, dass du in den Eigenschaften auch festlegen kannst, dass der Button public sein soll und nicht private, welchen Sinn hat es denn alle Eigenschaften eines Button setzen zu wollen?

    Vieleicht ist es in deinem Fall nicht so eine gute Idee den Button noch amel auf ein extra Control zu setzen.

    Grüsse

    Blurry ist unser Bordtroll, da brauchste keine Mühe machen sinnvoll zu Antworten.



  • Schade, jetzt hatte ich extra stinkenden Fisch geholt. Den werd ich doch lieber wegwerfen.



  • ja aber angeblich soll doch immer alles private sein.



  • blurry333 schrieb:

    ja aber angeblich soll doch immer alles private sein.

    Alles kann doch nicht private sein, weil sonst können Objekte nicht miteinandere interagieren, oder?

    class Value
    {
    private int content;
    
    // Wer soll das Aufrufen?
    private int GetContent()
    {
    //...
    }
    


  • Dein Problem ist nicht, dass der Button private ist, dein Problem ist, dass der Button offenbar nicht in ein Control gehört...


Anmelden zum Antworten