问题标签 [hierarchicaldatatemplate]
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.
wpf - 使用 wpf HierarchicalDataTemplate 接口的任何方式
嗨,我正在使用接口 IFooNode,它是树的一部分。
我想使用 HierarchicalDataTemplate 在 TreeView 中显示这棵树。但是,由于界面原因,这不起作用。我看到两种方法,我都不会称之为“好”
找出真正实现 IFooNode 的类型(我们称之为 FooNode...),然后找到定义 FooNode 的程序集,添加对该程序集的引用并为 FooNode 创建一个 HierarchicalDataTemplate(希望实现类永远不会改变...)
编写一个包装 IFooNode 的类 MyCoolIFooNodeWrapperForWpf,不绑定到树,而是从树根填充 MyCoolIFooNodeWrapperForWpf 的列表,并为 MyCoolIFooNodeWrapperForWpf 创建一个 HierarchicalDataTemplate。
无论数据是什么类型,我都可以以某种方式始终应用 HierarchicalDataTemplate(我认为这将是较小的邪恶......)
还有其他想法吗?
wpf - 如何为从 HierarchicalDataTemplate 生成的 TreeViewItem 指定哪个 TreeViewItem 样式/模板?
情况:
我有两个在 TreeView 中表示的类。DiskSpec 和 DiskSet。DiskSpec 可以单独存在,也可以是 DiskSet 的子项。我正在启用 DragDrop 功能,以便用户可以将 DiskSpec 从 DiskSpec 节点拖到 DiskSet 上,以将其添加到该 DiskSet 中。现在一切都在工作,除了一件事。我的 DragDropHelper 类需要在 ItemsPresenter(或相关类)中指定该控件是拖动源还是放置目标。
我的 TreeView 设置如下:
问题:
所以我真的需要两个 TreeViewItem 样式。一次用于 DiskSets(它指定将呈现 DiskSpecs 的 ItemsPresenter 是一个 DropTarget),另一个用于指定它的 ItemsPresenter 是一个 DragSource。
不幸的是,我没有看到任何从 HierarchicalDataTemplate 对象设置 TreeViewItem 样式或模板的方法,并且似乎没有办法指定此 ItemTemplate 仅用于特定的 DataType。
有什么想法吗?还是我错过了什么?
在下面找到我的 XAML 中的一些示例。
默认树视图项
有关 DragDropHelper 属性设置的示例,请参阅 ItemsPresenter 部分。
树视图结构
c# - WPF 树视图数据模板
假设我有这样的事情:
如何为这种类型实现数据模板?目前我有:
但这不显示任何文件夹内容。似乎第二个模板的DataType应该是local:TopicFolder,但是WPF不允许这样做。
有什么建议么?
UPD:TreeView 以这种方式绑定到 ObservableCollection<TopicFolder> :
PS:这绝对不是私人/公共/财产问题。对于已发布的字段,我有相应的公共属性。输出中没有绑定错误,只是没有显示任何 FolderContent 项。
c# - WPF TreeView-添加/删除节点后如何刷新树?
我参考这篇文章:
WPF TreeView HierarchicalDataTemplate - 绑定到具有多个子集合的对象
并修改树结构,如:
在 Entry.cs 中:
在 Source.cs 中:
在 XAML 文件中:
在 UserControl.cs 中:
当我在特定节点“Entry”上单击右键以在 Entry 下添加新节点“Source”(调用“Add”方法)时,我在 Entry 下成功添加了一个新的“Source”对象,但我看不到这个新节点在树视图上。添加/删除节点时如何刷新树视图?
wpf - 带有 HierarchicalDataTemplate 的 WPF 本地化 TreeView
事情是这样的:
我有一个简单的 WPF Windows 应用程序,其中包含一个TreeView
,它是在HierarchicalDataTemplate
一些分层数据的帮助下构建并提供的。
分层数据结构由 FakeRec 类组成,该类包含一个List<FakeRec>
. 每个项目都包含一个 Title 字符串属性。所以在我的 XAML 中,我有:
这工作正常,在生成的TreeView
我看到每个节点的标题。
现在我想让这整棵树本地化。我在 FakeDirResources.Resx 中有我的资源(在一个单独的程序集中,但这没关系)。如果我这样做:
我的树是空白的(显然,因为在我的FakeDirResources.resx
文件中我没有带有 key 的资源Title
,但我需要使用Title
另一个绑定的,通过资源解决它,然后以某种方式将结果绑定到树。
请注意,如果我只是将 aTextBlock
放在窗口上,与树或 无关HierarchicalDataTemplate
,我可以将它毫无问题地绑定到资源,如下所示:
这很好用,获取字符串,如果我更改System.Threading.Thread.CurrentThread.CurrentUICulture
并刷新我的提供程序,此字符串将更改为新语言。
问题是如何将两者结合起来?我错过了什么?我想一定有一些技巧(根据我对 WPF 的短暂经验,这可能不是一个直截了当的技巧)。
干杯!
阿隆。
wpf - TreeView、ObjectDataProvider、HierarchicalDataTemplate、xsd2Code 未显示任何内容
我有一个用 xsd2code 创建的对象层次结构。对象层次结构由 Project 类型的根对象组成,其中包含名为文件夹的 ObservableCollection 文件夹,这是一个递归对象,包含名为文件夹的文件夹的 ObservableCollection 和名为文件的文件我想通过 ObjectDataProvider 将此对象层次结构绑定到 TreeView 并控制通过 HierarchicalDataTemplate 定义显示
ObjectDataProvider 和 DataTemplates 在 App.xaml 中合并的资源中定义,如下所示
TreeView 是这样定义的
全局处理是:我从 Xml 文件(xsd2code 功能)加载对象层次结构。正如我在调试中看到的那样,我的对象层次结构是干净的。然后,我在这样的代码中将对象层次结构绑定到 ObjectDataProvider
好吧,TreeView 中什么也没有出现。我错过了什么?
.net - HierarchicalDataTemplate 跳过层次结构
我有一个像
Level1
--Level2
----Level3
------Level4
显示在一个HierarchicalDataTemplate
. 到目前为止还可以,但我想跳过第 2 级和第 3 级,因此第 4 级直接在第 1 级之下。这可能吗?
silverlight - 在 Silverlight 中使用 HierarchicalDataTemplate 设置 TreeView 并与 ItemSource 绑定
我正在尝试构建一个 TreeView 并像这个链接一样设置它:
Silverlight 与 WPF - 带有 HierarchialDataTemplate 的 Treeview
作为对第一个实际答案的评论,提供者说他们是如何解决它的,但他们没有提供代码,我理解他们所说的,但我对此真的很陌生,无法做到正确。我与实体和组具有相同的设置结构。我想知道是否有人可以解释 xaml 最终的样子。我假设他们创建了一个新的节点类,这只是意味着他们创建了一个基本上包含组列表的类。就像是
我只是想深入三个层次:
组 1
- - - - AnotherGroup1
- - - - - - - - entity1
- - - - - - - entity2
- - - - AnotherGroup2
- - - - - - - - entity1
Group2
- - - - Entity1
- - - - Entity2
- - - - AnotherGroup1
- - - - - - - - entity1
- - - - - - - entity2
- - - - AnotherGroup2
- - - - - - - - entity1
依此类推...
就像我说的,我是新手。我也一直在尝试使用本教程:
但是当我尝试设置另一个 HierarchicalDataTemplate 时,它说 ItemTemplate 设置了不止一次。我迷路了。
编辑:在网上找到这个链接,它也有帮助......我想......
http://www.codeproject.com/Articles/36451/Organizing-Heterogeneous-Data-on-a-WPF-TreeView.aspx
wpf - 应用于字段/属性的 HierarchicalDataTemplate
是否可以将 HierarchicalDataTemplate 应用于属性?我知道我可以将它应用到一个 DataType,它工作得很好,但是如果我有一个通用类,并且唯一可区分的元素是这个类中的一个枚举。那么我可以以某种方式对枚举的值应用不同的 HierarchicalDataTemplate 吗?
问候,
于尔根
wpf - ConverterParameter 与多绑定绑定
是否可以将绑定添加到 MultiBinding 中的 ConverterParameter?像这样的东西:
其中 IsFiltered 是应用模板的对象的属性。我总是收到一个 XAML 解析器错误,即 ConverterParameter 中的绑定不正确/允许...或者是否有其他方法可以做到这一点?
问候,
于尔根