我有一个包含很多项目的排序树视图。当我添加一个新项目时,我希望选择新添加的项目并将其显示在屏幕上。例如:如果我在屏幕上看到前 10 个项目并且新项目添加到第 20 位,那么视图应该更改以显示新添加的项目(它可以是屏幕上的第一个、最后一个或在中间——没关系)。阅读一些博客文章后,我可以进行选择。请帮助我了解如何实现有关在屏幕上显示的所需功能。
卢卡斯·格拉兹
我建议你看看这篇文章,作者展示了如何使用附加行为。通过这种行为,您可以在 XAML 中执行所有操作:
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<Setter
Property="local:TreeViewItemBehavior.IsBroughtIntoViewWhenSelected"
Value="True"
/>
</Setter>
</Style>
</TreeView.ItemContainerStyle>
其中 IsBroughtIntoViewWhenSelected 是附加属性。
如果您已经获得了TreeViewItem
与您新添加的项目相对应的信息,您所要做的就是调用yourItem.BringIntoView()
.