Хорошо, я потратил часы, пытаясь понять это, и я не могу.
У меня есть поле со списком ниже, которое правильно привязано к моей коллекции данных.
<ComboBox Name="cbx" Width="250" Height="25"
Visibility="{Binding Path=IsComboBox,Converter={StaticResource BoolConverter}}"
ItemsSource="{Binding Path=Answers}"
SelectedValuePath="AnswerId"
SelectedItem="{Binding Path=SelectedAnswer, Mode=TwoWay}"
DisplayMemberPath="Answer"/>
Выбранный элемент, однако, не заполняет верхнюю часть моего свойства Выбранный ответ. Я поместил текстовое поле в форму и привязал его к SelectedAnswer.Answer, и это правильно связывает с ответом.
По какой-то причине мое поле со списком не будет привязывать выбранный ответ
- Я прочитал кое-что о макете свойства поля со списком и попытался изменить его, а также прошел через getter и setter свойства, чтобы убедиться, что оно не очищается (что не связано с привязкой к текстовому полю)
Пожалуйста, помогите с этим.
SurveyAnswer:
public class SurveyAnswer : INotifyPropertyChanged
{
private Guid answerId;
public Guid AnswerId
{
get { return answerId; }
set {
answerId = value;
NotifyPropertyChanged("AnswerId");
}
}
private string answer;
public string Answer
{
get { return answer; }
set {
answer = value;
NotifyPropertyChanged("Answer");
}
}
public Guid SurveyLineID { get; set; }
private bool isSelected;
public bool IsSelected
{
get { return isSelected; }
set {
isSelected = value;
NotifyPropertyChanged("IsSelected");
}
}
#region NotifyPropertyChanged
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(String info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
#endregion
}