问题标签 [treeview]
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.
.net - 如何在 .NET 中获取 TreeView 中所有子节点的列表
我的 WinForms .NET 应用程序中有一个 TreeView 控件,该控件具有多个级别的子节点,这些子节点的子节点具有更多的子节点,没有定义的深度。当用户选择任何父节点(不一定在根级别)时,如何获取该父节点下所有节点的列表?
例如,我从这个开始:
问题是这个循环深度是定义的,我只是让节点埋在三个层次上。如果下次用户选择父节点时,有七个级别怎么办?
design-patterns - 将一种类型的树结构转换为另一种的设计模式?
我有一种树结构,表示地图中的层层次结构,按层和类别的类型划分。每个节点可以是不同类型的层的不同类(但所有节点都实现一个公共接口)。
我需要将该类转换为 ASP.NET TreeView 控件。输入树中的每个节点都是输出树中的一个节点,其属性集取决于节点的类型。我不希望输入树类知道 UI 类,所以我不能在其中编写“ToTreeViewNode()”方法。目前有 4 种具体节点类,其中 2 种是复合的(包含子节点),其中 2 种是叶子。这在未来可能会改变。
感觉这里有一种设计模式很想用,你能帮我看看它是什么吗?
c# - TreeView 标签编辑问题
我有一个带有如下节点的树视图:“Foo (1234)”,并希望允许用户重命名节点,但只有 Foo 部分,没有 (1234)。我首先尝试BeforeLabelEdit
像这样更改节点文本:
但是当我单击节点进行编辑时,文本框中会出现“Foo (1234)”。
好吧,那我们试试别的。
我设置treeView1.LabelEdit
为false,然后执行以下操作:
然后在 中AfterLabelEdit
,我设置LabelEdit
回 false。
你猜怎么着?这也不起作用。它将节点文本更改为“Foo”,但不会出现编辑文本框。
有任何想法吗?谢谢
c# - Selecting a node in virtualized TreeView with WPF
Is there a way to select manually a node in virtualizing TreeView and then bring it into view?
The data model I'm using with my TreeView is implemented based on the VM-M-V model. Each TreeViewItem's IsSelected property is binded to a corresponing property in ViewModel. I've also created a listener for TreeView's ItemSelected event where I call BringIntoView() for the selected TreeViewItem.
The problem with this approach seems to be that the ItemSelected event won't be raised until the actual TreeViewItem is created. So with the virtualization enabled node selection won't do anything until the TreeView is scrolled enough and then it jumps "magically" to the selected node when the event is finally raised.
I'd really like to use virtualization because I have thousands of nodes in my tree and I've already seen quite impressive performance improvements when the virtualization has been enabled.
c# - Xml 数据到 WPF TreeView 的双向绑定
我正在尝试使用 WPF 作为表示层重写我的ForestPad应用程序。在 WinForms 中,我以编程方式填充每个节点,但如果可能的话,我想利用 WPF 的数据绑定功能。
一般来说,将 WPF TreeView 双向数据绑定到 Xml 文档的最佳方法是什么?
通用解决方案很好,但作为参考,我尝试绑定的 Xml 文档的结构如下所示:
asp.net - 为什么我的 asp:TreeView 选择的节点在 UpdatePanel 中被重置?
我有一个包含 2 的 asp.net 2.0 页面UpdatePanels
。
第一个面板包含一个TreeView
控件,当我在三视图控件中选择一个节点时,它只会触发第二个的更新UpdatePanel
。这是正确的行为。
更新面板之外的页面上有两个按钮(上一个/下一个)。这些按钮触发两个面板的更新。按钮的行为是选择树中的相邻节点。第一次单击其中一个按钮时,我得到了预期的行为,并且选择了相邻节点,并且两个面板都被更新以反映此更改。
当我再次单击这些按钮中的任何一个时,就会出现问题。树视图的选定节点似乎记住了先前选定的节点,并且按钮作用于该节点。所以上一个/下一个按钮的行为是什么都不做或跳回两个。
编辑- 演示我的问题的示例代码
标记
背后的代码
就像树的视图状态没有被保存?
asp.net - 当 asp:TreeView 在 UpdatePanel 中时,如何清除先前的选择?
我有一个包含两个 UpdatePanel 的 ASP.Net 2.0 页面。第一个面板包含一个 TreeView。第二个面板包含一个标签,由树中的选择触发。当我选择一个节点时,标签会按预期更新,并且TreeNode
我单击的节点会突出显示,并且之前选择的节点不再突出显示。但是,如果一个节点在代码隐藏中原始突出显示(选择),则在选择另一个节点时不会删除突出显示。
标记
背后的代码
在开始时第一个节点被选中。为什么选择另一个节点时它的突出显示没有被删除?
另外,我问了一个关于我没有得到答案的相同设置的不同问题。任何帮助将不胜感激。
编辑我知道设置ChildrenAsTriggers="false"
会起作用,但我想避免再次渲染树,因为它可能非常大。
c# - 允许在 .NET TreeView 中进行多选
我被困在 .NET 2.0 Windows 窗体中。
TreeView
标准控件中似乎不存在选择多个节点的功能。
我正在尝试为上下文菜单选择执行此操作。因此,复选框在这里不是可接受的 UI 范例。
提供非常必要的功能的最佳方式是什么?
asp.net - Asp.net 树视图
我已将 TreeView 放置在更新面板中,并且 HoverNodeStyle-Font-Underline="true" 将显示鼠标悬停下划线。但是回发后鼠标悬停时没有下划线
javascript - 最佳 AJAX 树视图
有哪些支持异步 JSON 加载的更好的 AJAX Treeviews。
YUI TreeView 看起来不错,但是有表格等臃肿。