このエリアの周りにはいくつかのポストがありますが、私に役立つものはありません...シナリオは次のとおりです。範囲をシミュレートする2つの「シーズン」ドロップダウンがあります。開始範囲1でシーズンを選択した場合、ビューモードは自動的に終了範囲にバインドされたプロパティを同じシーズンに設定します(デフォルトは1年で、範囲ではありません)。読みやすくするための書式設定attibutes):ビューモデルでWPF MVVM Light - SelectedItemのバインディングは変更されていません
<ComboBox ItemsSource="{Binding AvailableSeasons, Mode=OneWay}"
SelectedItem="{Binding SelectedBeginRangeSeason, Mode=TwoWay}"
ItemTemplate="{DynamicResource SeasonItemShortFormat}" />
<ComboBox ItemsSource="{Binding AvailableSeasons, Mode=OneWay}"
SelectedItem="{Binding SelectedEndRangeSeason, Mode=TwoWay}"
ItemTemplate="{DynamicResource SeasonItemShortFormat}" />
プロパティ次のようになります。私は、最後のプロパティは、デバッグ文とし、ユニットテストの両方で変更されている確認した
private Season _selectedBeginRangeSeason;
private const string SelectedBeginRangeSeasonPropertyName = "SelectedBeginRangeSeason";
public Season SelectedBeginRangeSeason {
get { return _selectedBeginRangeSeason; }
set {
if (_selectedBeginRangeSeason != value) {
var oldValue = _selectedBeginRangeSeason;
_selectedBeginRangeSeason = value;
RaisePropertyChanged<Season>(SelectedBeginRangeSeasonPropertyName, oldValue, value, true);
}
}
}
private Season _selectedEndRangeSeason;
private const string SelectedEndRangeSeasonPropertyName = "SelectedEndRangeSeason";
public Season SelectedEndRangeSeason {
get { return _selectedEndRangeSeason; }
set {
if (_selectedEndRangeSeason != value) {
Debug.WriteLine("Updating property SelectedEndRangeSeason...");
var oldValue = _selectedEndRangeSeason;
_selectedEndRangeSeason = value;
Debug.WriteLine("Broadcasting PropertyChanged event for property SelectedEndRangeSeason...");
RaisePropertyChanged<Season>(SelectedEndRangeSeasonPropertyName, oldValue, value, true);
}
}
}
private void UpdateSelectedSeasonSelectors() {
// if the end range isn't selected...
if (_selectedEndRangeSeason == null) {
// automatically select the begin for the end range
SelectedEndRangeSeason = _selectedBeginRangeSeason;
}
}
、しかし、私がそれを選択するとUIが変化していない...何が起こっているのか把握することができず、このように多くの異なる方法を見てきた。
[この質問](http://stackoverflow.com/questions/1605939/wpf-combobox-selecteditem-not-updating)あなたのような音。あなたはその答えを試しましたか? – RMart