【问题标题】:HierarchicalDataTemplate what is it supposed to do?HierarchicalDataTemplate 它应该做什么?
【发布时间】:2014-09-10 23:48:30
【问题描述】:

基本上我有一个 eeview,里面有一堆对象,treeview 需要绑定相同的属性。

这是我正在使用的代码,它似乎不起作用

    <TreeView ItemsSource="{Binding Drives}">
        <TreeView.ItemTemplate>
            <HierarchicalDataTemplate>
                <TreeViewItem Header="{Binding Name}" ItemsSource="{Binding Folders}" IsExpanded="{Binding IsExpanded, Mode=TwoWay}">
                    <TreeViewItem.ItemTemplate>
                        <HierarchicalDataTemplate>
                            <StackPanel>
                                <TreeViewItem Header="{Binding Name}" ItemsSource="{Binding Folders}" IsExpanded="{Binding IsExpanded,Mode=TwoWay}">
                                    <TreeViewItem.ItemTemplate>
                                        <HierarchicalDataTemplate>
                                            <TreeViewItem Header="{Binding Name}" ItemsSource="{Binding Folders}" IsExpanded="{Binding IsExpanded,Mode=TwoWay}"/>
                                        </HierarchicalDataTemplate>
                                    </TreeViewItem.ItemTemplate>
                                </TreeViewItem>
                            </StackPanel>
                        </HierarchicalDataTemplate>
                    </TreeViewItem.ItemTemplate>
                </TreeViewItem>
            </HierarchicalDataTemplate>
        </TreeView.ItemTemplate>
    </TreeView>

基本上,当我进入第三级树视图项目时,我只得到命名空间+对象名称。 DataTemplate 不应该不断流动吗?

【问题讨论】:

  • 您是否尝试过移除堆栈面板?
  • 你不需要像这样嵌套HierarchicalDataTemplates。假设ItemsSourceFoldersTreeView 中的每个项目中的Folders。此外,检查输出窗口是否有任何绑定错误。
  • 我没有遇到任何绑定错误。绑定都在工作,但模板不是
  • 请发布您的视图模型代码。

标签: c# wpf treeview hierarchicaldatatemplate


【解决方案1】:

更多类似的

    <TreeView ItemsSource="{Binding Drives}">
        <TreeView.ItemTemplate>
            <HierarchicalDataTemplate ItemsSource="{Binding Folders}">
                <TextBlock Text="{Binding Name}"></TextBlock>
                <HierarchicalDataTemplate.ItemContainerStyle>
                    <Style TargetType="TreeViewItem">
                        <Setter Property="IsExpanded" Value="{Binding IsExpanded,Mode=TwoWay}" />
                    </Style>
                </HierarchicalDataTemplate.ItemContainerStyle>
            </HierarchicalDataTemplate>
        </TreeView.ItemTemplate>
    </TreeView>

【讨论】:

  • 使用此代码,我得到了一个模板化的树视图级别(基本级别),树中的每个树视图项都不需要绑定到属性文件夹
  • 有趣,因为我得到了所有级别。你想让我把整个回购代码发给你吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-17
  • 1970-01-01
相关资源
最近更新 更多