Wpf TreeView是否为每个节点/级别创建新的ItemContainerGenerator?

Wpf TreeView是否为每个节点/级别创建新的ItemContainerGenerator?,wpf,Wpf,我想知道TreeView是否有一个“全局”生成器,或者在展开时是否会在每个节点/级别上创建一个新的ItemContainerGenerator 有人必须处理这种深度的wpf吗 再次提前感谢我非常感谢你的帮助 任何ItemsControl(包括TreeView)的ItemContainerGenerator都与该控件关联,并负责代表ItemsControl生成UIElement项 ItemContainerGenerator生成每个项目,而不是每个项目都创建自己的ItemContainerGene

我想知道TreeView是否有一个“全局”生成器,或者在展开时是否会在每个节点/级别上创建一个新的ItemContainerGenerator

有人必须处理这种深度的wpf吗


再次提前感谢我非常感谢你的帮助

任何ItemsControl(包括TreeView)的ItemContainerGenerator都与该控件关联,并负责代表ItemsControl生成UIElement项

ItemContainerGenerator生成每个项目,而不是每个项目都创建自己的ItemContainerGenerator。 但正如您正确指出的,treeviewitem本身就是itemscontrol,因此每个控件都有其生成器,该生成器将生成其子项。 MSDN参考号:

ItemsControl通过 IItemContainerGenerator接口。ItemContainerGenerator属性 ItemsControl的类型为ItemContainerGenerator,它 实现IItemContainerGenerator接口


我把这个问题也发到了msdn论坛上。这就是他们对我的回答

我想我是对的。每个节点都有自己的生成器

请查看:


你好,尼特,很高兴再次收到你的来信。:)我认为这个答案在某种程度上证实了在每个节点上都创建了一个新的ItemContainerGenerator。TreeView是一个Items控件,但TreeView也是一个Items控件。根据您从MSDN发布的定义,每个ItemsControl都有自己的ItemContainerGenerator,因此基本上,只要节点展开,最终每个节点都会有一个生成器。有趣的事实::)是的,每个项目的生成器生成其子项目