в моем ListBox у меня есть 5 чисел 1 - 5, SelectedItem является привязкой данных в двухстороннем режиме к SelectedAmount, свойству int со значением по умолчанию 1, когда я запускаю приложение, у меня 1 выбрано как значение и выделено на моемListBox, это очень хорошо, но теперь всякий раз, когда я изменяю значение на 2 или любое другое значение, ListBox показывает новое значение, но оно не подсвечивается, а SelectedAmount по-прежнему содержит старое значение, что явно плохо, я хочу всякий раз, когдаПользователь изменяет выбранное значение, SelectedAmount, чтобы получить новое значение напрямую, и пользователю теперь, после того как он сделал свой выбор, пришлось снова щелкнуть, чтобы выделить его.какие-нибудь идеи?
<ListBox ItemsSource="{Binding SiliconAmounts}" SelectedItem="{Binding SiliconAmount,Mode=TwoWay}" Height="31" HorizontalAlignment="Left" Margin="83,148,0,0" VerticalAlignment="Top" Width="149" IsTabStop="True" TabIndex="4" />
моя база данных привязки к selectedItem выглядит как
public int SiliconAmount
{
get
{
return _SiliconAmount;
}
set
{
if (_SiliconAmount != value)
{
_SiliconAmount =value;
OnPropertyChanged("SiliconAmount");
}
}
}
моя собственность элементов выглядит как
public ObservableCollection<int> SiliconAmounts
{
get { return _SiliconAmounts; }
set
{
if (_SiliconAmounts != value)
{
_SiliconAmounts = value;
OnPropertyChanged("SiliconAmounts");
}
}
}
в моем конструкторе viewModel
SiliconAmounts = new ObservableCollection<int>();
SiliconAmounts.Add(1);
SiliconAmounts.Add(2);
SiliconAmounts.Add(3);
SiliconAmounts.Add(4);
SiliconAmounts.Add(5);
заранее спасибо