Laden...

[erledigt] Listbox außerhalb der MainWindow befüllen, ohne MVVM

Erstellt von IT_Lena vor 4 Jahren Letzter Beitrag vor 4 Jahren 697 Views
I
IT_Lena Themenstarter:in
2 Beiträge seit 2019
vor 4 Jahren
[erledigt] Listbox außerhalb der MainWindow befüllen, ohne MVVM

Hey liebe Community,

ich versuche meine Frage kurz und bündig zu halten,
ich habe mir ein Button und eine Listbox erstellet,
nun möchte ich die Listbox über eine Schleife mit Daten befüllen.
Wenn ich es direkt in der MainWindow.xaml.cs ändere funktioniert es.


        private void Button_Click(object sender, RoutedEventArgs e)
        {

            int counter = 0;
            int cou = 5;
            while (counter <= cou) {
            listbox1.Items.Add(counter); // 
            counter++;
            }

        }

Aber ich möchte es abstrakter halten, d.h. aus einer anderen Klasse starten.
Falls der Button gedrückt wird, soll die Listbox außerhalb dieser Klasse befüllt werden.
Ich habe es so versucht:

Klasse class1:


        public void tBoxFilled(object sender, EventArgs e)
        {

            string name = "Pferd";
            listbox1.Items.Add(name); // vorerst ohne Schleife
       
        }


Leider passiert so nichts, die Listbox wird nicht befüllt.
Beides haben den gleichen Namespace Namen, ich habe google schon gefragt aber ich finde keine Lösungen die ich verstehe, mit MVVM und co. kann ich nichts anfangen. Kann mir jemand eine einfache Lösung geben ?

Danke im voraus !
Lena

16.833 Beiträge seit 2008
vor 4 Jahren

Verwende Datenbindung. Es ohne MVVM machen zu wollen wird Dich von einem Problem zum anderen bringen.
[Artikel] MVVM und DataBinding
WPF ist auf die Verwendung mit MVVM ausgelegt. Du wirst sonst von Stolperstein zu Stolperstein fallen.

D.h., dass Du ein ViewModel brauchst und dort die Daten, die in der UI angezeigt werden sollen, hinterlegst.
Das ViewModel verwendest Du dann zum Binden der Daten im XAML.

Macht Dein Leben mit WPF viel viel einfacher.
Es wird Dich mehr Zeit kosten Workarounds zu bauen statt MVVM zu lernen.

I
IT_Lena Themenstarter:in
2 Beiträge seit 2019
vor 4 Jahren

Danke dir, muss mich dann da wohl einarbeiten.
Wie kann ich diesen Beitrag als erledigt deklarieren ?

Viele Grüße,
Lena

16.833 Beiträge seit 2008
vor 4 Jahren

Siehe [Hinweis] Wie poste ich richtig?

wenn ihr eure Threads durch ein vorangestelltes [erledigt] im Titel als erledigt kennzeichnet

😉