text w ListBoxie się nie odświeża przy zmianie 1 obiektu

0

Witam. Mam listę elementów A. (ObservableCollection)
Każdy element listy A zawiera listę B. (ObservableCollection)

Mam 2 listboxy.
W listboxie1 (elementy A) mam:

hListConnections.ItemsSource = Engine.ListConnections.ListTravel; 

Każdy element ma tekst:

public void UpdateName()
        {
            try
            {
                sConnectionName = ListConnection.First().PlaceTo.sName + " - " + ListConnection.Last().PlaceTo.sName;
            }
            catch
            {
                sConnectionName = "";
            }
        } 

Jest miejsce rozpoczynające trasę i kończące trasę.
Po każdym dodaniu nowego miejsca aktualizuje się zmienna

sConnectionName  

Drugi ListBox jest uzależniony od tego, jaki element zaznaczylismy w pierwszym. Początkowo jest to domyślna lista:

ObservableCollection<cListConnection> DefListConnection = new ObservableCollection<cListConnection>(); 
hListConnection.ItemsSource = DefListConnection; 

Zawiera ona wszystkie miejsca od początku do końca, przez które będziemy przejeżdżać:

     private void hListConnections_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if(hListConnections.SelectedIndex == -1)
            {
                hListConnection.IsEnabled = false;
                hListStation.IsEnabled = false;
                hAddStation.IsEnabled = false;
                hListConnection.ItemsSource = DefListConnection;
            }
            else
            {
                hListConnection.IsEnabled = true;
                hListStation.IsEnabled = true;
                hAddStation.IsEnabled = true;
                hListStation.SelectedIndex = -1;
                hListConnection.ItemsSource = ((cListConnection) hListConnections.SelectedItem).ListConnection;
            }
        } 

Problem leży w tym, że po dodaniu nowego miejsca tekst się zmienia, nowe miejsce trasy dodaje się w ListBoxie2, ale tekst w elemencie zaznaczonym nie zmienia się. Jak poprawnie obsłużyć zmianę tekstu?

Na screenie przedstawiam odczytanie stringa z elementu ListBox1. Niestety na listBoxie1 nie widać tej zmiany.
91b29af093.png

1
  1. Czy klasa, której obiekty są na liście A, implementuje INotifyPropertyChanged?
  2. Czy PropertyChanged jest w niej wywoływane, gdy zmienia się właściwość, która jest wyświetlana w listboxie 1?
  3. Czy po wywołaniu PropertyChanged na tej właściwości jest wywoływany jej getter?

1 użytkowników online, w tym zalogowanych: 0, gości: 1