我有许多具有相同DataSource的ListView,IsSynchronizedWithCurrentItem="True"
我正在动态地向这个DataSource添加项目.
问题是当滚动出现时,除非我移动滚动条,否则添加的项目不可见.我应该为此目的使用另一个控件..或者如何将最后添加的项目带入视图(和滚动条).
直到现在我才直接在XAML中做所有事情,所以如果可能的话,我会很感激这样的解决方案.
我有一个解决方案:
它不能适用于所有情况,但仅此一个就足够了!
诀窍是禁用 ListView ScrollBars 并用 ScrollViewer 包围它。
...
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" /> <!-- This is needed! -->
...
</Grid.RowDefinitions>
Run Code Online (Sandbox Code Playgroud)
..
<ScrollViewer x:Name="MyScrollViewer" Grid.Row="0" >
<ListView Name="MyListView"
ItemsSource="{Binding}"
IsSynchronizedWithCurrentItem="True"
ScrollViewer.VerticalScrollBarVisibility="Disabled" />
</ScrollViewer>
Run Code Online (Sandbox Code Playgroud)
...
</Grid>
Run Code Online (Sandbox Code Playgroud)
然后只需在需要时致电
MyScrollViewer.ScrollToEnd();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6560 次 |
最近记录: |