当前位置: 首页 > 知识库问答 >
问题:

在树视图中预选项目

缪志新
2023-03-14

我正在实现一个类别映射器。有2树视图。两者都包含来自不同来源的类别。(即使他们看起来像来自同一个来源)

用户应该能够将一个类别从左侧映射到右侧树状视图的多个。它存储在配置文件中。

但是,当视图最初加载并且用户单击左侧的类别时,我想预选右侧的映射类别,从配置文件加载。

我看到我可以用一个选项来做这件事,但是我没有看到一个选项可以用多个选项来做这件事。

我怎样才能做到这一点?

这里有一个ootb正在运行的演示实现

共有1个答案

葛骏
2023-03-14

我看了你的要点,问题似乎是绑定选择,对吗?我做了一些简单的挖掘,发现绑定可观察列表并不容易。我想我甚至没有看到一个不仅仅是添加侦听器来模拟绑定的解决方案。然而,用SimpleListProperty包装该列表似乎可以做到这一点。这里有一个演示:

class TestView : View() {
    // This mocks your target list in the ViewModel
    val targetList = SimpleListProperty(listOf<String>().asObservable())

    override val root = vbox(10) {
        // Both table views and tree views use an Observable Selection list
        listview(listOf("asefas", "asefasef", "asefasefasefase").asObservable()) {
            // Wrap in SimpleListProperty, then bind
            targetList.bind(SimpleListProperty(selectionModel.selectedItems))
            selectionModel.selectionMode = SelectionMode.MULTIPLE
        }

        setPrefSize(300.0, 300.0)
    }

    init {
        // Target list now reflects changes made to selection model
        targetList.addListener { _, _, change ->
            println("Selections changed to: $change")
        }
    }
}
 类似资料:
  • 我有一个树状视图,其中有可选择的项,以及可能触发某些代码操作的子项。单击子项时,应执行操作,但父项必须保留/成为选定项。 我面临的问题是项目没有被正确取消选择,导致在树视图中选择多个项目。 以下是treeview的xaml: clsBindingDebugger除了调试打印转换的值并传递转换和转换回值之外什么也不做。 接下来是TreeviewItem类的略为缩短的版本 最后我触发事件MyTreev

  • 我想为我的树视图创建一个上下文菜单。TreeView XAML: 而helper:ExtendedTreeView是此类: 我使用它绑定SelectedItem并在我的ViewModel中使用它。 我的树视图有“标题”,它们是类型T_Frage它们的节点是类型T_Wertung,所以它是 T_Frage T_Wertung T_Wertung T_Wertung 我想为标题创建一个上下文菜单。因此

  • 树视图以分层视图显示文档。导航栏可让你快速地切换、插入或删除文档。 添加一个文档 在导航栏点击 或按 CTRL+N 来得到一个空白显示的文档。 输入所需的数据。 在导航栏点击 来保存文档。 【注意】如果你的集合是空的,你需要点击 来添加新字段。 编辑一个文档 前往你想编辑的文档。 点击要修改的字段名、值或类型。 在导航栏点击 来应用更改。 添加一个字段或一个项目 前往你想编辑的文档。 点击 来添加

  • 树视图以分层视图显示文档。导航栏可让你快速地切换、插入或删除文档。 添加一个文档 在导航栏点击 或按 COMMAND-+ 来得到一个空白显示的文档。 输入所需的数据。 在导航栏点击 来保存文档。 【注意】如果你的集合是空的,你需要点击 来添加新字段。 编辑一个文档 前往你想编辑的文档。 点击要修改的字段名、值或类型。 在导航栏点击 来应用更改。 添加一个字段或一个项目 前往你想编辑的文档。 点击

  • 树视图以分层视图显示文档。导航栏可让你快速地切换、插入或删除文档。 添加一个文档 在导航栏点击 或按 CTRL+N 来得到一个空白显示的文档。 输入所需的数据。 在导航栏点击 来保存文档。 【注意】如果你的集合是空的,你需要点击 来添加新字段。 编辑一个文档 前往你想编辑的文档。 点击要修改的字段名、值或类型。 在导航栏点击 来应用更改。 添加一个字段或一个项目 前往你想编辑的文档。 点击 来添加

  • 新WPF, C#,.网在这里! 我正在开发一个用户界面来管理用户权限。我决定用树景,我刚开始工作。几乎100%基于此“按需加载”解决方案:http://www.codeproject.com/Articles/26288/Simplifying-the-WPF-TreeView-by-Using-the-ViewMode 我已经让treeView正常工作了,但是现在我需要添加一些东西,以便在我在t