У меня проблема с производительностью с наблюдаемой коллекцией. Этого Еогеаспа является переплетен с выпадающим списком (MaAcquisition является наблюдаемой коллекцией):wpf улучшить производительность привязки огромный наблюдаемый сбор
for (double i = 0.1; i <= 5; i += 0.1)
{
MaAcquisition.Add($"{i:0.0}");
x++;
}
С этим Еогеаспом, каждый циклом, я связываю значение выпадающего список, это очень медленно.
Так, чтобы улучшить это я делаю это:
List<String> MaAcquisitionList = new List<String>();
for (double i = 0.1; i <= 5; i += 0.1)
{
MaAcquisitionList.Add($"{i:0.0}");
x++;
}
MaAcquisition = MaAcquisitionList;
Это работает, но после этого «Еогеаспа» я связывающие выбрать «SelectedItem» =>
SelectedMa = MaAcquisition[x - 1];
Выбранный элемент переплетены в мой combobox, и он не работает (выбранный элемент пуст).
<ComboBox ItemsSource="{Binding MaAcquisition, Mode=TwoWay}" SelectedItem="{Binding SelectedMa, Mode=TwoWay}" IsEnabled="{Binding PreheatingDisable}"/>
И, наконец, есть код "SelectedMa":
public string SelectedMa
{
get { return _selectedMa; }
set
{
_selectedMa= value;
OnPropertyChanged();
RaisePropertyChanged();
}
У вас есть идея для этой проблемы?
Thank's.
Можете ли вы показать код для свойства/поля 'SelectedMa'? – slugster
Вы можете заглянуть сюда: http://stackoverflow.com/questions/8606994/adding-a-range-of-values-to-an-observablecollection-efficiently –
SelectedMa должен уведомить об изменениях. См. Примеры INotifyPropertyChanged. – AnjumSKhan