Мне нужно привязать выбранный элемент ComboBox в соответствии со значением поля в контексте данных, которое получает его родительский контейнер.
контейнер представляет собой сетку, которая получает свой текстовый текст от элемента в элементе управления, когда он щелкает
private void Button_Click(object sender , RoutedEventArgs e)
{
GridEmployee.DataContext = ((Button)sender).DataContext;
}
* Баттон получил свой источник предметов из списка ограниченных сотрудников до itemControl
сетка содержит некоторые элементы управления, среди которых комбо-бокс, который я инициализирую с помощью Enum
public Enum Gender
{
Male,Female
};
foreach(string _gender in Enum.GetNames(Gender) )
{
GenderComboBox.Items.Add(_gender);
}
класс Employee имеет соответствующий Пол свойства
private string gender;
public string Gender
{
get{return gender;}
set
{
gender = value ;
if( PropertyChanged != null )
PropertyChanged(this,new PropertyChangedEventArgs("Gender"));
}
}
GenderComboBox.SelectedItem ограничен значением свойства Gender для ограниченного объекта. Employee
<ComboBox x:Name="GenderComboBox" SelectedItem="{Binding Gender , Mode=TwoWay}" />
проблема здесь, конечно, в том, что элемент не выбирается ..
Я подумал, что это может быть потому, что элементы в выпадающем списке являются строками, и я пытаюсь связать их в соответствии с пользовательским конвертером, который просто принимает значение Enum и возвращает .ToString ()
об этом.
, но я не смог проверить это, потому что это вызвало исключение XamlParseException в подрядчике формы.
, который я не до конца понял, почему это произошло, может быть потому, что у него не было значения для преобразования при формировании нагрузки.
чтобы сделать вывод, как связать свойство из класса моего сотрудника
в комбинированный список со строковым представлением значения свойства?