gpt4 book ai didi

wpf - TreeView 的 IsSynchronizedWithCurrentItem 属性(或等效属性)在哪里?

转载 作者:行者123 更新时间:2023-12-04 13:35:52 24 4
gpt4 key购买 nike

Tell me it ain't so .

我有一个典型的 Windows/文件资源管理器,例如 setup。

  • 左侧我有一个 TreeView 所有数据绑定(bind),显示层次结构中的节点
  • 右侧我有一个 ListView 显示 Node.Properties

  • ListView 有一个 IsSynchronizedWithCurrentItem 属性,它很震撼。例如如果我有另一个 ListView 显示节点列表,并且两个 listView 都将此属性设置为 true。更改 NodesListView 中的节点选择将自动更新 PropertiesListView。

    现在我需要与 NodesTreeView 和 PropertiesListView 相同的东西......似乎 TreeView 没有这样的属性。

    是否有更多“WPF 方式”的解决方案来解决这个问题?还是我必须处理 Tree 的 NodeSelectionChanged 事件并通过代码刷新 listView。

    最佳答案

    一个非常简单的解决方案是将您的“详细信息”UI 元素绑定(bind)到 TreeView 的 SelectedValue 属性。例如,如果您的 TreeView 看起来像这样:

    <TreeView Name="CategoryName" ItemsSource="{Binding Source={StaticResource A_Collection}, Path=RootItems}" />

    然后,您可以使用以下方法绑定(bind)细节 UI 元素(如文本框):
    <TextBox Text="{Binding ElementName=CategoryTreeView, Path=SelectedValue.Name}"/>

    将导致文本框绑定(bind)到当前在 TreeView 中选择的项目的名称属性。

    如果要将许多 UI 项绑定(bind)为所选 TreeView 项的详细信息,请考虑在包含所有详细信息控件(DockPanel/Grid/StackPanel 等)的元素上设置 DataContext。

    关于wpf - TreeView 的 IsSynchronizedWithCurrentItem 属性(或等效属性)在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/374109/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com