IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Špatné propojení selecteditem

V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Petr Kasnal
Člen
Avatar
Petr Kasnal:5.3.2018 20:45

Zdrávím mám následující kód a data se mi do comboboxu nastaví jak mají ale je problém že mi nefunguje selecteditem nevíte někdo proč? Předem děkuji za všechny rady

ViewModel:

public class WorkViewModel : INotifyPropertyChanged
  {
      private ObservableCollection<Work> _works;
      public ObservableCollection<Work> Works
      {
          get
          {
              return _works;
          }
          private set
          {
              _works = value;
              NotifyPropertyChanged("Works");
          }
      }

      public WorkViewModel(WorkContext con)
      {
          Works = new ObservableCollection<Work>(Con.Works.ToList());
      }

      private Work _selectedWork;
      public Work SelectedWork
      {
          get
          {
              return _selectedWork;
          }
          set
          {
              _selectedWork = value;
              NotifyPropertyChanged("SelectedWork");
          }
      }

      public event PropertyChangedEventHandler PropertyChanged;

      private void NotifyPropertyChanged(string propertyName)
      {
          if (PropertyChanged != null)
          {
              PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
          }
      }

  }

XML:

<ComboBox x:Name="WorkCB" ItemsSource="{Binding Path=Work}" SelectedItem="{Binding SelectedValue}" HorizontalAlignment="Left" Margin="50,10,0,0" VerticalAlignment="Top" Width="224" Height="37" Loaded="WorkCB_Loaded"/>

Load metoda:

private void WorkCB_Loaded(object sender, RoutedEventArgs e)
      {
          WorkCB.ItemsSource = WorkVM.Works;
      }
Editováno 5.3.2018 20:46
 
Odpovědět
5.3.2018 20:45
Avatar
don.jarducius:5.3.2018 21:53

Já ti nevim, ale nebude to špatným nabidnováním SelectedValue vs. SelectedWork ?
... lovím z vody

Nahoru Odpovědět
5.3.2018 21:53
Ten kdo nechce hledá důvod, ten kdo chce hledá způsob
Avatar
Petr Kasnal
Člen
Avatar
Odpovídá na don.jarducius
Petr Kasnal:5.3.2018 22:08

Omlouvám se to jsem opravil a stále nefunguje

 
Nahoru Odpovědět
5.3.2018 22:08
Avatar
jozef_i
Člen
Avatar
Odpovídá na Petr Kasnal
jozef_i:6.3.2018 7:18

Nemá byť v položke SelectedItem len hodnota, bez Binding, čiže SelectedItem="Se­lectedValue".­..?

 
Nahoru Odpovědět
6.3.2018 7:18
Avatar
d4rkw34v3r
Tvůrce
Avatar
Odpovídá na Petr Kasnal
d4rkw34v3r:6.3.2018 8:14

Nechybí ti u toho bindingu updateSource = PropertyChanged?

 
Nahoru Odpovědět
6.3.2018 8:14
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.