Полоса прокрутки списка не изменяет размер должным образом при удалении элемента из нижней части списка

У меня стандартный список. Я могу добавлять элементы, используя текстовое поле ввода. Я могу удалить их с помощью клавиши удаления или контекстного меню. Когда я удаляю элементы из верхней части списка, размер полосы прокрутки изменяется правильно. Если я прокручиваю вниз, а затем удаляю элементы, размер полосы прокрутки изменяется неправильно, т.е. вместо увеличения размера он уменьшается в размере. Если я прокручиваю вверх с помощью мыши или клавиши вверх, отображается правильный размер полосы прокрутки. Также, когда я удаляю последний элемент, вместо элементов, перемещающихся вниз, остается пустое место. Есть идеи? Спасибо.


person user221331    schedule 30.11.2009    source источник
comment
Не могли бы вы опубликовать код? Я только что создал фиктивный список с кнопкой добавления и кнопкой удаления - я не вижу описанного поведения (я могу опубликовать этот код, если хотите, но я не вижу, как это будет особенно полезно без вашего кода для дать контекст).   -  person MoominTroll    schedule 30.11.2009


Ответы (1)


Попробуйте применить этот стиль к ListBox.ItemsContainerStyle:

<Style x:Key="OnTopItemContainerStyle"  TargetType="{x:Type ListBoxItem}">
    <Setter Property="VerticalAlignment" Value="Top"/>
    <Setter Property="VerticalContentAlignment" Value="Top"/>
</Style>

Надеюсь, поможет.

person levanovd    schedule 01.12.2009