我在ViewModel類,EmployeeList和Employee中有2個屬性。 EmployeeList是動態屬性,也就是說,該屬性可以在運行時更改。 ViewModel類的源代碼低於:當ItemsSource發生變化時Silverlight 4組合框SelectedValue不工作
public class SampleViewModel
{
public ObservableCollection<Employee> EmployeeList { get; set; }
public Employee { get { ... } set { ... } }
}
查看已分別設置其ItemsSource
和SelectedValue
財產EmployeeList的和員工。
ItemsSource="{Binding EmployeeList, Mode=TwoWay}"
SelectedValue="{Binding Employee, Mode=TwoWay}"
除了EmployeeList已更改以及EmployeeList中不存在Employee,方案的步驟如下所述,Everythings的工作良好。
- EmployeeList的有2個僱員,A先生和乙先生和的SelectedValue是A先生
- EmployeeList的已更改爲乙先生和C君,後這次SelectedValue不再工作。如果我在ViewModel和NotifyPropertyChanged上設置Employee,則此值不會在UI上更新,或者如果我從UI中選擇新的Employee,則此值不會在ViewModel上更新,底線是View和ViewModel已斷開連接,因爲EmployeeList已更改且Employee不存在於該列表中。
我想知道如何解決這些問題?