Как получить смещение прокрутки в RadDataBoundListBox?
Мы пытаемся найти вертикальное смещение, когда пользователь пытается прокрутить RadDataBoundListbox в Windows Phone 8 Silverlight. Например: позиция, в которой прокручивается список.
Пока что мы пытаемся зарегистрироваться в событии ScrollStateChanged, но это событие возвращает только состояния прокрутки, такие как TopStretch, Scrolling, NotScrolling и т. Д.
<telerikPrimitives:RadDataBoundListBox x:Name="MessagesList" IsAsyncBalanceEnabled="True" Style="{StaticResource RadDataBoundListBoxStyle1}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="ScrollStateChanged">
<Command:EventToCommand Command="{Binding ScrollChangedCommand}" PassEventArgsToCommand="True"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</telerikPrimitives:RadDataBoundListBox>
Мы не смогли найти ни одного события / подхода для решения этой проблемы.
Любая идея относительно решения этой проблемы может быть полезна.
Благодарю.
1 ответ
Вам нужно получить ScrollViewer
от RadDataBoundListBox
и получить к нему доступ напрямую. Там нет события, когда ScrollViewer
свитки, как в WP81 и UWP, поэтому вам нужно создать привязку к VerticalOffset
собственности и наблюдать за ее изменениями.