Globalna kolekcja

0

Mam jedno pytanie czemu w statycznej globalnej kolekcji dodaje nowy obiekt bez problemów. A dla niestatycznej, jedynie wyświetlam dane, które zostały zainicjalizowane, nie można dodać nowych. Ogólnie nie chcę tego robić, ale dobrze byłby wiedzieć, czemu dla niestatycznej kolekcji, dane nie są zapamiętywane, jedynie zainicjalizowane można bez problemów wyświetlić.

        private ObservableCollection<Test> _test = new ObservableCollection<Test>
        {
                new Test("Test","Test", 1, 2)          
        };

        public IEnumerable<Animal> Test => _test;

        public void Add(Test test)
        {
              _test.Add(test);
        }
public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void ButtonAdd_Click(object sender, RoutedEventArgs e)
        {
            var testx = new TestRepo();
            var test = new Test(Textname.Text, Texttype.Text, int.Parse(Textage.Text), int.Parse(TextWeight.Text));
            testx.Add(test);
        }

      private void ButtonStatus_Click_(object sender, RoutedEventArgs e)
        {
            var testx = new TestRepo();
            TestlListView.ItemsSource = testx.Test;
        }

1

Za każdym razem po kliknięciu w przycisk tworzysz nową kolekcję, więc nie ma tam danych, które dodałeś klikając w przycisk poprzednim razem. Uczyń swoją kolekcję polem klasy MainWindow zamiast zmienną lokalną w metodzie obsługującej przycisk.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.