Autor Beitrag
kkirchhoff
Hält's aus hier
Beiträge: 4


D7 Archtext, Delphi 2006
BeitragVerfasst: Do 18.06.09 21:20 
Hallo,

ich bin mir zwar nicht so sicher ob ich mit meinem Anliegen richtig bin - sonst ggf. verschieben -, aber ich denke es passt hier auch rein.

Ich habe der Unit des Hauptform meiner Anwendung eine Instanz einer Klasse erstellt, die ich an anderen stellen meine Anwendung verwenden möchte. Wichtig ist, dass ich keine neue Instanz erstellen kann, weil in der bereits erstellten Instanz bestimmte Werte ermittelt wurden, die nicht verändert werden sollen.

Erstellt wird die Instanz wie folgt:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
    public partial class frmHaupt : DevExpress.XtraBars.Ribbon.RibbonForm
    {
        private Modulmanager appMudulmanager = new Modulmanager(); 


        public frmHaupt()
        {
            InitializeComponent();
        }

        public Modulmanager AppMudulmanager
        {
            get { return appMudulmanager; }
            set { this.appMudulmanager = value; }
        }

.....

}



und auf diese Instanz möchte ich Anwendungsweit zugreifen .. Ist das überhaupt möglich?


Wiedermal besten Dank für Eure Hilfe

Moderiert von user profile iconKha: C#-Tags hinzugefügt
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4798
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Fr 19.06.09 10:22 
Hallo,

die beiden Stichwörter für dein Anliegen heißen:
- static
- Singleton-Klasse

wobei ich deinen Ansatz nicht so gut finde, d.h. daß du diese Instanz im Hauptformular erzeugst und in anderen Klassen darauf dann zugreifen willst.
Denn normalerweise sollten untergeordnete Klassen bzw. Formulare das Hauptformular nicht kennen.
Am besten, du lagerst die Instanz in eine eigene Klasse aus und greifst darauf dann 'global' zu oder aber du übergibst in echter OOP-Weise an die untergeordneten Klassen diese Instanz per Referenz (im Konstruktor oder per Property o.ä.).