2013-05-04 3 views
0

Привет Я пытаюсь привязать свой ComboBox выбранный элемент к свойству в моей модели просмотра, где сеттер примет это значение и выполнит некоторую другую логику. Теперь мой ComboBox работает правильно, вытаскивая элементы из наблюдаемых систем коллекций, однако мне не удалось привязать выбранный элемент, который является сериалом к ​​свойству. Выбранный элемент не получает строковое значение ComboBox. Все еще хорошо, что DataContext присваивается представлению в коде позади. Любые идеи, это мой ViewModel:Binding ComboBox selected Элемент для свойства View Model

public class CablingRequests : ObservableCollection<CablingRequest> 
{ 
    public ObservableCollection<CablingRequest> PendingRequests { get; set; } 
    public ObservableCollection<CablingRequest> ProcessedRequests { get; set; } 
    public ObservableCollection<CablingRequest> Systems { get; set; } 
    public ObservableCollection<CablingRequest> SelectedSystemConfiguration { get; set; } 

    private string _serial; 
    public string Serial 
    { 
     get { return _serial; } 
     set 
     { 
      if (_serial == value) 
       return; 
      _serial = value; 
      GetSelectedSystemConfiguration(_serial); 
     } 
    } 

И мой XAML код выпадающего списка:

<ComboBox x:Name="ComboBoxSerial" ItemsSource="{Binding Path=Systems}" 
DisplayMemberPath="SerialNumber" SelectedValue="{Binding Path=Serial, Mode=TwoWay}" 
IsSynchronizedWithCurrentItem="True" MinWidth="150" /> 
+0

отсутствует xaml отсутствует здесь это: user2350144

ответ

1

Ваш выпадающий привязан к коллекции CablingRequest, так что вы должны либо связать SelectedItem к экземпляру CablingRequest, или если вы просто хотите серийный номер, то вы должны установить SelectedValuePath в свойство «SerialNumber» типа CablingRequest.

Для получения дополнительной информации см. Difference between SelectedItem, SelectedValue and SelectedValuePath.

Смежные вопросы