Статус:
Offline
Реєстрація: 27.11.2008
Повідом.: 87
Реєстрація: 27.11.2008
Повідом.: 87
- 🔴 16:51 Повітряна тривога в Харків.обл.
- #1
При привязке ListBox к коллекции объектов происходит странный эффект при отображении элементов в ListBox, а именно при смене выбранного элемента (когда много раз изменяется выбранный элемент) у предэдущего элемента иногда остается синяя рамка (рамка выбранного элемента), более того при дальнейшем кликании на ListBox рамки размножаются и начинают прыгать из элементов на другие элементы.
listBox.SelectionMode - Single
рамки размножаются нелинейно, т.е. не при каждом клике.
Проделовались следующие варианты:
1) Привязка к ObservableCollection<string>
Полученный эффект:
2) Привязка к List<string>
Полученный эффект тотже.
3) Привязка к ObservableCollection<string> через CollectionViewSource
Код вообщем не вылаживаю, но полученный эффект тот-же.
Данный эффект проявился именно при привязке. Если просто в XAML определить набор ListBoxItem в ListBox, то данного эффекта не происходит.
Почему такое происходит и как его побороть???
Полезно все таки выговариться пока писал понял в чем проблема. Вместо ObservebleCollection<string> надо было использовать ObservableCollection<ListBoxItem>
listBox.SelectionMode - Single
рамки размножаются нелинейно, т.е. не при каждом клике.
Проделовались следующие варианты:
1) Привязка к ObservableCollection<string>
Код:
public partial class Window1 : Page
{
public Window1()
{
InitializeComponent();
listBoxTests.ItemsSource = _tests;
}
private ObservableCollection<string> _tests = new ObservableCollection<string>();
}
Полученный эффект:
2) Привязка к List<string>
Код:
public partial class Window1 : Page
{
public Window1()
{
InitializeComponent();
listBoxTests.ItemsSource = _tests;
}
private List<string> _tests = new List<string>();
}
Полученный эффект тотже.
3) Привязка к ObservableCollection<string> через CollectionViewSource
Код вообщем не вылаживаю, но полученный эффект тот-же.
Данный эффект проявился именно при привязке. Если просто в XAML определить набор ListBoxItem в ListBox, то данного эффекта не происходит.
Почему такое происходит и как его побороть???
Полезно все таки выговариться пока писал понял в чем проблема. Вместо ObservebleCollection<string> надо было использовать ObservableCollection<ListBoxItem>
Останнє редагування: