wpf - TreeView 绑定(bind)到 XMLDataProvider - 在编辑器中显示数据,但运行时为空

标签 wpf data-binding treeview

我已将 TreeView 绑定(bind)到 XMLDataProvider。 TreeView 按 Visual Studio 编辑器中的预期显示数据。但是当我按 F5 时,应用程序运行,但 TreeView 是空白的。有谁知道为什么我运行应用程序时看不到它?

这是完整的代码:

<Window x:Class="TreeViewDataBinding.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300">
    <Window.Resources>
    <XmlDataProvider x:Key="FolderList">
        <x:XData>
            <TreeFolders>
                <Folder Name="Audit Reports" />
                <Folder Name="Joes Test" >
                    <Folder Name="Analysis01" />
                    <Folder Name="Test090803" />
                </Folder>
                <Folder Name="Carl" />
                <Folder Name="Steve" />
            </TreeFolders>

        </x:XData>
    </XmlDataProvider>
    <HierarchicalDataTemplate
                    x:Key="FolderTreeItemTemplate"
                    DataType="Folder">
        <HierarchicalDataTemplate.ItemsSource>
            <Binding XPath="child::*" />
        </HierarchicalDataTemplate.ItemsSource>
        <TextBlock Text="{Binding XPath=@Name}" />
    </HierarchicalDataTemplate>
        </Window.Resources>
    <Grid>
        <TreeView
            ItemsSource="{Binding Source={StaticResource FolderList}, XPath=//TreeFolders/*}"
            ItemTemplate="{StaticResource FolderTreeItemTemplate}" />
    </Grid>
</Window>

最佳答案

我没有运行代码,但我的猜测是您需要指定一个命名空间:

xmlns=""

将 xmlns 附加到您的第一个数据标签:

<XmlDataProvider x:Key="FolderList">
    <x:XData>
        <TreeFolders xmlns="">
            <Folder Name="Audit Reports"/>
            <Folder Name="Joes Test">
                <Folder Name="Analysis01"/>
                <Folder Name="Test090803"/>
            </Folder>
            <Folder Name="Carl"/>
            <Folder Name="Steve"/>
        </TreeFolders>
    </x:XData>
</XmlDataProvider>

关于wpf - TreeView 绑定(bind)到 XMLDataProvider - 在编辑器中显示数据,但运行时为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1605062/

相关文章:

c# - TreeView 选中/取消选中所有子项

c# - 使用 UIAutomation 进行单元测试

wpf - 错误: Failed to connect while Publishing Click Once Application Wpf

wpf - 根据对象类型取消绑定(bind)

c# - [C#][WPF]如何在不卡住UI的情况下制作异步TreeView?

c# - 如何在 TreeView 的每个节点旁边添加一个按钮?

c# - 应用程序数据的常用存储位置在哪里

wpf - 区分 TouchUp 和 TouchLeave 以及 TouchDown 和 TouchEnter 的策略?

grails - Grails 集成测试中的一对多关联数据绑定(bind)问题

c# - System.Windows.Data 错误 : 1 System. Windows.Data 错误:5