В моем приложении у меня есть поле со списком. Он использует в качестве элемента имя (строку) и идентификатор (int)
Я написал некоторый код, который обновляет то, что отображается, когда я меняю значение элемента.
((Item)(joinedFilesCombobox.SelectedItem)).PictureID = 0;
joinedFilesCombobox.Items.Refresh();
С этим кодом, когда я нажимаю на значок выпадающего списка в выпадающем списке, мой элемент корректно обновляется в списке, но не текущий выбранный элемент. Чтобы правильно обновить текущий отображаемый элемент, который я только что изменил, мне нужно сделать небольшой трюк:
int curr = joinedFilesCombobox.SelectedIndex;
joinedFilesCombobox.SelectedIndex = curr+1;
joinedFilesCombobox.SelectedIndex = curr;
При этом обновляется представление текущего выбранного элемента.
Но это решение не чистое. Есть ли более чистый способ сделать это?