Autor Beitrag
cybermailer
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Sa 25.05.13 12:36 
Hallo,

habe eine Frage arbeite gerade daran an einer zentrale Klasse herum aus mehreren Fenstersichten zu arbeiten.
(bin blutiger Anfäger)

Mein Hauptfenster:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
private List<DVD> dvdInformationList;

        public MainWindow()
        {
            InitializeComponent();
            dvdInformationList = new List<DVD>();
            


        }
/*Hier übergebe ich an anderes Fenster*/
 private void Button_AddDetails_Click(object sender, RoutedEventArgs e)
        {
            adddetails neues_fenster = new adddetails();
            neues_fenster.test(dvdInformationList);
            neues_fenster.Owner = this;
            neues_fenster.WindowStartupLocation = WindowStartupLocation.CenterOwner;
            neues_fenster.ShowDialog();

        }


Mein Fenster bei dem die Infos hinzugefügt werden sollen:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
     public List<DVD> arrayList;
        private string dvdname;


        public adddetails()
        {
            
            InitializeComponent();
        }  

        public void test(List<DVD> _arrayList){

             arrayList = _arrayList;
        }
       private void Button_ok(object sender, RoutedEventArgs e)
        {


            dvdname = TitleTextBox.Text;
 
            arrayList.Add(new DVD { Dvdtitel = dvdname });
            Close();
        }


-> Die Werte werden via Textbox eingegeben die TitelTextBox heißt.



Habe mich jetzt so daran versucht, kann das passen wenn nein was hab ich denn falsch
gemacht?

Und wie kann ich diesen Wert dann an ein Drittes Fenster auslesen. (Übergabe
ist klar wird gleich funktionieren...)

Danke..
Palladin007
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1282
Erhaltene Danke: 182

Windows 11 x64 Pro
C# (Visual Studio Preview)
BeitragVerfasst: Sa 25.05.13 19:52 
Mir wird grad nicht so ganz klar, wo das Problem liegt und dein erster Satz gibt in meinen Augen fast gar keinen Sinn.



Eine mögliche Idee, was du meinst, habe ich aber:

Du hast eine Liste mit DVD-Informationen und möchtest von drei verschiedenen Forms (Fenstern) darauf zugreifen, sie verändern, erweitern, was auch immer?

Da kannst du die Tatsache ausnutzen, dass die Klasse List ein Referenz-Typ ist. Wenn dir der Begriff nicht klar ist, solltest du dir schleunigst die Grundlagen aneignen, denn das ist sehr wichtig in der objektorientierten Programmierung.

Wenn dir das aber ein Begriff ist, weißt du auch, dass, wenn du ein Objekt an mehrere andere Ziel-Objekte z.B. in eine Eigenschaft übergibst und dann dieses Objekt irgendwo änderst, dann ist diese Änderung in jedem der Ziel-Objekte identisch.
Das kannst du dir zu Nutze machen, indem du dann jeder Form, die die DVD-Liste beinhalten und verändern soll, diese Liste übergibst. Entweder im Konstruktor, oder du legst eine extra Eigenschaft an, die du dann im Nachhinein mit dieser Liste definierst.
So kannst du dann in jeder Form, die diese Eigenschaft besitzt, auf diese eine Liste zu greifen und jede Änderung ist überall, wo die Referenz der Liste gespeichert ist, ebenfalls auffindbar.
cybermailer Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mo 27.05.13 10:43 
ja, genau das meinte ich. Danke für den Hinweis. Habe mich da jetzt auch schon einwenig eingelesen und es scheint ohne Probleme so zu funktionieren...