내 문제는 내 ViewModel에서 'SelectionChanged'이벤트를 호출하려고한다는 것입니다.MVVM SelectionChanged Combobox가 'Set'을 호출하지 않습니다.
나는 콤보 상자 (여기 ListPicker라고, 그것의 전화 응용 프로그램)이 있습니다
<tool:ListPicker Name="txt_LZZ"
ItemsSource="{Binding ZZR}" SelectedItem="{Binding MySelectedItem}" />
뷰 모델에서 내 재산은 다음과 같습니다
private List<string> _zzr;
public List<string> ZZR
{
get
{
_zzr = new List<string>();
_zzr.Add("Jahr");
_zzr.Add("Monat");
_zzr.Add("Woche");
_zzr.Add("Tag");
return _zzr;
}
set
{
_zzr = value;
RaisePropertyChanged(() => ZZR);
}
}
private string _mySelectedItem;
public string MySelectedItem
{
get
{
return _mySelectedItem;
}
set
{
if (value == _mySelectedItem)
return;
_mySelectedItem = value;
RaisePropertyChanged(() => MySelectedItem);
GetValues();
}
}
이 프로그램은 get 메소드를 한번 호출 _mySelectedItem의 값은 'null'입니다. 필자가 원하는 것은 Combobox (ListPicker)에서 SelectedItem을 변경할 때 ViewModel이 MySelectedItem에 대한 세터에있는 GetValues 메서드를 호출해야한다는 것입니다. 문제 : -> ViewModel이 setter를 호출하지 않습니다. 왜?
필자는 ItemsSource를 설정했는데, 필자는 필자가 필요하지 않다고 생각했기 때문에 ItemsSource를 설정했습니다. 초점을 맞추고 싶지 않았습니다 ... 첫 번째 게시물을 편집 할 것입니다. – Rudi
답변이 업데이트되었습니다. – devdigital
감사! :) 문제는 'Mode = TwoWay'로 설정하지 않았습니다. 그리고 네, 저는 getter에 값을 설정해서는 안되는 것을 알고 있습니다 만, 테스트 용이었습니다. – Rudi