그래서 나는 다음과 같은 모델이 있습니다WPF 콤보 상자 바인딩
public class Person
{
public String FirstName { get; set; }
public String LastName { get; set; }
public String Address { get; set; }
public String EMail { get; set; }
public String Phone { get; set; }
}
public class Order
{
public Person Pers { get; set;}
public Product Prod { get; set; }
public List<Person> AllPersons { get; set; }
public Order(Person person, Product prod)
{
this.Pers = person;
this.Prod = prod;
AllPersons = database.Persons.GetAll();
}
}
을 내가 주문을 편집하는 데 사용되는 WPF 창을 가지고있다. DataContext를 Order로 설정했습니다.
public SetDisplay(Order ord)
{
DataContext = ord;
}
나는 다음과 같은 XAML 있습니다
<ComboBox Name="myComboBox"
SelectedItem = "{Binding Path=Pers, Mode=TwoWay}"
ItemsSource = "{Binding Path=AllPersons, Mode=OneWay}"
DisplayMemberPath = "FirstName"
IsEditable="False" />
<Label Name="lblPersonName" Content = "{Binding Path=Pers.FirstName}" />
<Label Name="lblPersonLastName" Content = "{Binding Path=Pers.LastName}" />
<Label Name="lblPersonEMail" Content = "{Binding Path=Pers.EMail}" />
<Label Name="lblPersonAddress" Content = "{Binding Path=Pers.Address}" />
는하지만, 내가 선택한 항목을 변경하면 ....... 작동하지 않는 바인딩, 레이블이 업데이트되지 않습니다를 ... ..
감사합니다 !!
답장을 보내 주시면 감사하겠습니다.
있습니까? AllPersons.Contains (person)가 생성자에서 true를 반환합니까? 나는 아니 겠지! 도움이되는 게시물을 답변으로 표시하는 것을 잊어 버리지 마십시오. 그렇지 않으면 아무도 미래에 도움을 줄 수 없습니다. –
예 - 사람이 AllPersons에 100 % 확신합니다. – MadSeb