Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用c添加可编辑的TreeViewItem#_C#_Wpf_Treeview - Fatal编程技术网

C# 如何使用c添加可编辑的TreeViewItem#

C# 如何使用c添加可编辑的TreeViewItem#,c#,wpf,treeview,C#,Wpf,Treeview,我有一个程序,可以用代码输出文件系统内容(文件和文件夹)。 树视图项反映的每个文件或文件夹。 我希望能够从UI编辑每个TreeView项。是的,非常简单。这里有一个例子 <TreeView x:Name="treeView" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Grid.Column="0" Background="Beige">

我有一个程序,可以用代码输出文件系统内容(文件和文件夹)。 树视图项反映的每个文件或文件夹。
我希望能够从UI编辑每个TreeView项。

是的,非常简单。这里有一个例子

                <TreeView x:Name="treeView" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Grid.Column="0" Background="Beige">
                        <TreeViewItem Header="Files" ItemsSource="{Binding Root}">
                            <TreeViewItem.ItemTemplate>
                                <HierarchicalDataTemplate ItemsSource="{Binding}">
                                    <TextBox Text="{Binding Name}"/>
                                </HierarchicalDataTemplate>
                            </TreeViewItem.ItemTemplate>
                        </TreeViewItem>

                </TreeView>

代码隐藏

    public interface INamedObject
    {
        string Name { get; set; }
    }
    public class FileObject : INamedObject
    {
        public string Name { get; set; }
    };
    public class FolderObject : ObservableCollection<INamedObject>, INamedObject
    {
        public string Name { get; set; }

    };
    FolderObject _root = new FolderObject() { Name = "root" };
    public FolderObject Root
    {
        get
        {
            return _root;
        }
    }
公共接口INamedObject
{
字符串名称{get;set;}
}
公共类文件对象:INamedObject
{
公共字符串名称{get;set;}
};
公共类FolderObject:ObservableCollection,INamedObject
{
公共字符串名称{get;set;}
};
FolderObject _root=新FolderObject(){Name=“root”};
公共FolderObject根
{
得到
{
返回根;
}
}

那么你的问题是什么?你能提供一些你已经尝试过的代码吗?非常好!你几乎实现了你的目标。想要一些东西是很重要的。现在你只需要实现它。祝你好运