WPF TreeView 专注于新添加的项目

标签 wpf treeview focus selection

我有一个包含很多项目的排序 TreeView 。当我添加新项目时,我希望选择新添加的项目并将其显示在屏幕上。例如:如果我看到屏幕上的前 10 个项目,并且新项目添加到第 20 个位置,则 View 应更改以显示新添加的项目(可以是屏幕上的第一个、最后一个或中间 - 没关系)。在阅读了一些博客文章后,我能够进行选择。请帮助我了解如何实现有关在屏幕上显示的所需功能。

卢卡斯·格拉兹

最佳答案

我建议你看看this article作者展示了如何使用附加行为。通过这种行为,您可以在 XAML 中执行所有操作:

 <TreeView.ItemContainerStyle>
  <Style TargetType="{x:Type TreeViewItem}">
    <Setter 
      Property="local:TreeViewItemBehavior.IsBroughtIntoViewWhenSelected" 
      Value="True" 
      />
    </Setter>
   </Style>
  </TreeView.ItemContainerStyle>

其中 IsBroughtIntoViewWhenSelected 是附加属性。

关于WPF TreeView 专注于新添加的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1536773/

相关文章:

c# - 将 ContentPresenter.Content 转换为 UIElement 是否合适?

c# - 多次触发 TreeView AfterSelect 事件

wpf - TreeViewItem - 一起使用 ControlTemplate 和 HierarchicalDataTemplate

c++ - QComboBox::showPopup()从其QLineEdit窃取焦点

android - 如何在不实现 OnFocusChangeListener 的情况下检测 EditText 上的焦点丢失事件

c# - 将消息传递给Caliburn Micro中的静态类

c# - WPF 中如何处理字体大小?

.net - TargetType ="controlType"和 TargetType ="{x:Type controlType}"之间的区别

c# - 在 TreeNode 单击上调用代码隐藏方法

java - 如何可视化 Swing 控件中的焦点?