我创建了一个从 WPF 中的面板类继承的自定义圆形面板。
此自定义控件将以循环方式排列其所有元素。现在我想在使用这个控件的地方为其子元素提供样式。
如下所述是我的控件的使用,我想从这里向它提供子项模板作为属性,例如: DataTemplateToUse="{StaticResource ChildItemsTemplate}"
这个控件应该足够智能,可以将模板应用到它的所有子元素上。
<myControl:CirclePanel InnerRadius="250" OuterRadius="300">
</myControl:CirclePanel>
好的,我已按如下方式使用它
<Grid Margin="10">
<ItemsControl Name="icTodoList">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<local:CirclePanel x:Name="CircularPanel" InnerRadius="250" OuterRadius="300" Background="Cornsilk" >
</local:CirclePanel>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Button Content="{Binding Path=Title}" Margin="0,0,5,5"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</Grid>
并且动态地从后面的代码中删除我的圆形面板中的元素,所以现在它抛出错误:
无法为 ItemsControl 显式修改用作 ItemsPanel 的 Panel 的 Children 集合。ItemsControl 为 Panel 生成子元素