从文件中迭代XAML元素

时间:2011-11-22 13:21:16

标签: c# wpf xaml

我有一个加载XAML文件的应用程序,并在ContentControl中显示它。我还要实现的是一种方法来查看加载到控件的XAML代码,并使用我找到的Canvases的名称填充列表框。

这个小应用程序的主要任务是使用户能够更改特定画布及其元素的颜色。我的意思是,例如10幅画布,每幅画都包含一些<Path>元素。我想给用户一个在XAML代码中找到的画布列表,对于每个画布,如果用户更改特定画布的填充颜色,用户将能够更改其填充颜色(例如),该画布的子元素也会将其“填充”属性更改为所选颜色。

我没有找到迭代Canvases或Path元素的方法,所以如果有人有办法做到这一点,我会很高兴听到。

谢谢!

1 个答案:

答案 0 :(得分:1)

您似乎需要遍历给定控件的逻辑子树。为此,您需要递归使用LogicalChildren属性。

您可以在WPF here中找到有关元素树的更多信息。