问题标签 [treeviewitem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
10496 浏览

.net - 更改分层 TreeView 中的突出显示颜色

我有一个带有 HierarchicalDataTemplate 的 TreeView。

正如您在代码中看到的,我设置了 TreeViewItem 的选中触发器,但这没有任何效果。我也试过这个:

但这也没有效果。

有没有人知道该怎么做才能更改 TreeViewItem 的高亮颜色?

0 投票
1 回答
3281 浏览

c# - wpf 手动生成 TreeViewItem 容器

我在运行时创建一个 TreeView。它有几个节点(TreeViewItem),每个节点都有一个名称。最初它是折叠的。一个单独的组合框显示所有 TreeViewItem 的名称。我必须根据所选名称突出显示 TreeViewItem。我正在使用递归函数并像这样获取 TreeViewItem 容器:

但它是

parent.ItemContainerGenerator.Status = GeneratorStatus.NotStarted

对于所有折叠的项目。如何手动为它们生成容器(不扩展它们)?

0 投票
2 回答
1916 浏览

wpf - WPF TreeViewItem 取消选择的项目仍然轻微突出显示

我有多个扩展器控件,每个扩展器控件中有一个 ViewTree 控件。当我从一个 ViewTree 中选择一个 ViewTreeItem,然后从另一个 ViewTree 中选择另一个 ViewTreeItem 时,新选择的 ViewTreeItem 以深蓝色突出显示,但最后一个选定的项目现在以非常浅的蓝色阴影突出显示。请查看 www.zunjaa.com/public/images/screen.jpg 以了解我在说什么。如何使不再活动的项目不显示较浅的蓝色?

谢谢。

0 投票
1 回答
1113 浏览

silverlight - 使用 MVVM 模式选择 Silverlight Treeview 项目

谁能告诉我,请包含代码,如何使用 MVVM 模式选择树视图项

0 投票
1 回答
554 浏览

c# - 在不修改数据源的情况下修改数据绑定 WPF TreeView 上的单个 TreeViewItem

我有一个 MVVM WPF 应用程序,其 TreeView 数据绑定到视图模型类。它本质上是一个文件浏览器。我想向层次结构添加“添加新文件夹”的功能。为了实现所需的功能,我要做的只是在我的数据模板中将 Textblock 切换为可编辑的 TextBox。这是我的数据模板的样子:

问题是我无法修改单个 TreeViewItem,因为树视图是数据绑定的。有任何想法吗?谢谢

0 投票
2 回答
5986 浏览

wpf - TreeViewItem 上的键绑定

我有一个典型的树视图和一个视图模型。视图模型有一个可观察的其他视图模型集合,用作树的数据源。

和 ItemVM :

风景 :

但是,无论我尝试什么,只要它在 HierarchicalDataTemplate“内部”,就不会调用我的命令。

如果我将 TreeView.InputBindings 中的 KeyBinding(以及 ICommand / RelayCommand 从 ItemVM 移动到 TreeViewVM)一切都很好,则调用该命令。

但我想在 ItemVM 上使用命令(因为它是有意义的)。有任何想法吗?

0 投票
2 回答
4825 浏览

c# - 如何在 WPF C# 中获取 treeviewitem 的级别?

如何在 WPF C# 中获取 treeviewitem 的级别?在 Windows 窗体中,treeview 类有一个 .Level 成员,但 WPF C# 似乎没有。

0 投票
1 回答
665 浏览

c# - 如何在 TreeView 中为 TreeViewItem 执行命中测试?

我的项目中有一个System.Windows.Controls.TreeView,当用户右键单击它时,我正在显示一个上下文菜单。由于上下文菜单是动态构建的,我需要知道鼠标悬停的System.Windows.Controls.TreeViewItem 。

我该怎么做呢?

0 投票
3 回答
3966 浏览

wpf - 如何在 TreeView 中获取 TreeViewItem 的可用(可见)宽度

我有TreeViewItems ,其中HierarchicalDataTemplateGrid 由具有以下定义的 3 列组成:

我想设置网格的宽度,以便完全占用TreeViewItem内部的所有可用空间TreeView。因此,网格的第三列应该在TreeView.

如何获得网格宽度的正确值?

我知道对于ListBox ItemTemplate,我可以通过将其绑定到 来设置宽度ScrollContentPresenter

这个技巧在 中不起作用TreeView,因为孩子的可用空间比根树视图项目少。

有任何想法吗?

0 投票
1 回答
973 浏览

wpf - WPF在失去焦点时刷新TreeView

我在 WPF 应用程序(Framework 3.5 SP1)中的 TreeView 有问题。这是一个具有 2 个数据级别的 TreeVIew。我以特定方式展开/折叠第一级的项目(在 TreeViewItem 上单击鼠标)。同样,当我展开第一级 TreeViewItem 时,我将一些第二级 TreeViewItems 添加到组中(这是一个重要的细节,事实上,如果我不添加项目,问题就不会发生)。一切正常,直到 TreeView 失去焦点。例如,如果我在第一个位置展开 TreeViewItem,同时将一个元素添加到第二级,然后单击一个按钮(让 TreeView 失去焦点),然后再次单击TreeViewItem 在第三个位置展开它,用鼠标位置命中测试产生的 TreeViewItem 不是“真实的” TreeViewItem(在本例中为第三个),但 TreeViewItem 的位置高于单击的那个(在本例中为第二个)。我尝试在 TreeView-LostFocus 事件上使用 UpdateLayout 方法,但没有结果。可能我需要一种相反的方法:从 UI 开始,刷新包含 TreeViewItems 位置的对象。你能帮我么?谢谢!皮莱吉

这是代码: