У меня проблема с привязкой данных на ComboBox
. В выпадающем списке не отображаются изначально установленные элементы.
Мой .xaml:
<ComboBox
Name="LeaderTextBox"
Grid.Column="6"
Grid.Row="2"
MinWidth="150"
SelectedItem="{Binding Path=ProjectLeader}"
DisplayMemberPath="Name" Margin="5"
/>
В коде я установил ItemSource
следующим образом:
LeaderTextBox.ItemsSource = service.GetAllEmployee();
service.GetAllEmployee()
возвращает список / массив сотрудников, и они также заполняются в поле со списком, что означает, что я могу их выбрать.
Моя проблема в том, что если у меня установлено значение ProjectLeader
, то оно не отображается. Что мне там не хватает?
Модель для справки:
[Serializable]
[DataContract(Namespace = "Shared", IsReference = true)]
public class Employee
{
public Employee()
{
this.Projects = new List<Project>();
}
[DataMember]
public int? ID { get; set; }
[DataMember]
public String Name { get; set; }
[DataMember]
public String JobDescription { get; set; }
[DataMember]
public String Department { get; set; }
[DataMember]
public String DirectDialing { get; set; }
[DataMember]
public bool Status { get; set; }
[DataMember]
public virtual Project LeaderOfProject { get; set; }
[DataMember]
public virtual List<Project> Projects { get; set; }
public override string ToString()
{
return ID + " " + Name + " " + JobDescription + " " + Department + " " + DirectDialing;
}
}
[Serializable]
[DataContract(Namespace = "Shared", IsReference = true)]
public class Project
{
public Project()
{
this.EmployeesWorkingOnProject = new List<Employee>();
this.ProjectSteps = new List<ProjectStep>();
}
[DataMember]
public int? ID { get; set; }
[DataMember]
public String Titel { get; set; }
[DataMember]
public DateTime StartDate { get; set; }
[DataMember]
public DateTime EndDate { get; set; }
[DataMember]
public String Description { get; set; }
[DataMember]
public Employee ProjectLeader { get; set; }
[DataMember]
public bool Status { get; set; }
[DataMember]
public virtual List<Employee> EmployeesWorkingOnProject { get; set; }
[DataMember]
public virtual List<ProjectStep> ProjectSteps { get; set; }
public override string ToString()
{
return ID +" "+ Titel+" "+StartDate+ " "+ EndDate +" "+ Description;
}
}