问题标签 [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 投票
2 回答
2824 浏览

mvvm - 使用 MVVMLight 将命令绑定到 TreeViewItem 的问题

我正在尝试使用 MVVMLight 将 TreeViewItem Selected 事件绑定到命令。

TreeViewItem 是在 HierarchicalDataTemplate 中定义的,因此我无法添加 Interaction.Triggers(如下所示)

我还能如何将 EventTrigger 添加到每个 TreeViewItem?

谢谢。

0 投票
1 回答
2489 浏览

wpf - WPF MVVM - 在 TreeViewItem 中触发事件的最正确方法是什么

我目前正在使用此扩展程序来设置处理 ViewModel 中数据的特定事件...示例:

esi 和 swi 在哪里:

但是我想为 TreeViewItem 设置一个事件是什么?我无法直接访问它们,是吗?

编辑:我实际上正在使用 ItemContainerStyle,

但我不能把我的活动放在那里。我应该把这些线放在哪里?

提前致谢!

0 投票
1 回答
860 浏览

wpf - 双击时使TreeViewItem控件执行命令

我正在寻找一种在 WPF 中将命令绑定到 TreeViewItem 的方法,因此当我双击 TreeViewItem 时,会在我的 ViewModel(MVVM 模式)中执行 ICommand。很像 Visual Studio 解决方案资源管理器。

我希望我可以使用AttachedCommandBehaviour 之类的东西,但这不起作用。我猜这是因为 TreeViewItem 本身不支持命令。

这是我的测试实现,它不起作用:

有人对如何使这项工作提出建议吗?或者,也许您知道可以为我提供此功能的控件?我当然希望有一个 MVVM 友好的解决方案。最好全部在 XAML 中。

0 投票
3 回答
13537 浏览

wpf - WPF TreeViewItem 背景

当(或应用程序)失去焦点时,如何更改Background选定对象的。在这种情况下,默认情况下选定的项目具有浅灰色背景。TreeViewItemTreeView

编辑:第一个答案后尝试:但是TargetName="Bd"找不到元素。

0 投票
1 回答
1180 浏览

wpf - 将 WPF TreeView 转换为菜单

我无法将此工作树视图转换为菜单。

此树视图正确显示。

我将所有内容都更改为菜单,但它不起作用。有组名称和图像,箭头指向右侧,看起来它正在工作,但是当我单击它时它不会展开。

我究竟做错了什么?

0 投票
1 回答
2284 浏览

wpf - Switch View based on selected TreeViewItem

I have a Shell.xaml file which contains two other UserControls. On the left is my TreeView and on the right is a detail screen.

I want the detailscreen to be switchable based on a selected TreeViewItem. I know this can be achieved by using DataTemplates, because I've done it with simple button clicks and using the <ContentControl Content="{Binding CurrentDetailViewModel}"> tag to accomplish this, but I have no idea how to accomplish this based on a selected TreeViewItem. I also have a separate ViewModel class for my UserControl which holds my TreeView and a separate for each detail screen.

I've been using Josh Smith's tutorial on TreeViews: http://www.codeproject.com/KB/WPF/TreeViewWithViewModel.aspx

So I also do use the TreeViewItemViewModel.cs class of his.

Could someone shed some light onto this?

Thanks,

Grant

0 投票
1 回答
756 浏览

wpf - 具有不同控件模板的主题 WPF TreeViewItems

我正在尝试为继承自 TreeView 并使用 TreeViewItems 作为项目容器的自定义 PropertyGrid 控件创建不同的主题。此外,我想根据 TreeViewItem 绑定到的对象类型为 TreeViewItems 设置控件模板。我更愿意像现在一样通过设置 ItemsSource 来填充 PropertyGrid。

目前,我通过 HierarchialDataTemplate 设置 TreeViewItems.ItemContainerStyleSelector,根据绑定对象的类型应用不同的控件模板。在这种样式选择器中,我通过资源键返回静态资源。我不想使用此选择器和资源键方法,而是根据要绑定的对象的类型创建不同的派生 TreeViewItem 对象。这将允许我根据类型为每个主题应用不同的样式,就像其他控件的主题一样。但我看不出有办法做到这一点。覆盖 ItemsControl.GetContainerForItemOverride 如果传递了要绑定的对象或至少是其类型,它将执行我想要的操作,但是我看不到使此工作的方法。关于如何做到这一点的任何想法?或者,我对他的一切都错了吗?

0 投票
2 回答
5460 浏览

c# - 如何以编程方式将键盘焦点放在 WPF TreeViewItem 上?

我正在尝试以编程方式将键盘焦点设置为树视图项(在某些条件下)。我尝试了两种设置焦点的方法,这两种方法都成功地获得了焦点TreeViewItem,但失去了键盘焦点。

树视图绑定到视图模型:

我正在尝试通过TreeViewItem Selected路由事件设置焦点:

我正在尝试将重点TreeViewItem放在ControlTemplate

这两种方法都获得焦点,但失去键盘焦点(TreeViewItem.IsSelectionActive为假)。窗口中没有其他元素具有我可以分辨的焦点或键盘焦点(在测试中,我在另一个面板上只有一个只读文本框可以获取焦点)。有趣的是,我可以将键盘焦点放在(注释掉的)错误的MultiTrigger地方IsSelectionActive,但当然这会强制键盘TreeViewItem始终关注。

是否有其他方法可以更好地获得键盘焦点,以及无法获得键盘焦点的情况有哪些?

0 投票
1 回答
1278 浏览

wpf - WPF TreeView 取消 TreeViewItem 选择

我一直在寻找解决这个问题的方法,但我仍然找不到合适的解决方案。请帮忙。基本上,我有一个绑定到对象列表的树视图。当用户单击 treeviewitem 时,我会根据 treeviewitem 为数据网格加载数据。用户可以更改网格中的数据。如果数据网格发生变化并且用户单击另一个树视图项,则会要求用户保存。用户可以选择是、否或取消。当用户选择取消时,应用程序必须让用户停留在当前的树视图项上,直到他/她保存数据网格。问题是一旦用户选择了另一个treeviewitem,我就无法再次选择之前的选择。没有“SelectedItemChanging”事件。WPF 树视图只有 SelectedItemChanged 事件。我' 我尝试了多种解决方案,但我总是以无限结束。请提供任何提示或建议。

谢谢,明

0 投票
1 回答
1348 浏览

c# - 带有 HierarchicalDataTemplate 的 TreeView,有没有办法访问 TreeViewItem 事件,如 MouseDoubleClick 和 ItemSelected?

我用 HierarchicalDataTemplate 制作了一个 TreeView。有没有办法访问 TreeViewItem 事件,例如MouseDoubleClick()ItemSelected()

这是我的代码: