WPF UserControl有多个孩子

时间:2010-02-16 23:51:29

标签: wpf user-controls children

我有一个UserControl,我希望能有一个以上的孩子。它已经是StackPanel的孩子,所以我做错了什么?

最终,我希望控件能够自动包含一些自己的子项,然后,当它被使用时,允许将更多的子项放在其中一个元素中。我试了MSDN's How to Override the Logical Tree但没有成功。

提前致谢。

LayerPanelItem.xaml:

<UserControl x:Class="Controls.LayerPanelItem"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
 <StackPanel></StackPanel>
</UserControl>

Main.xaml:

<controls:LayerPanelItem>   
    <TextBlock>Test</TextBlock>
    <TextBlock>Test</TextBlock> <!-- Error:  The property 'Content' is set more than once. -->
</controls:LayerPanelItem>

2 个答案:

答案 0 :(得分:2)

您不能(直接)使用UserControl执行此操作。相反,您需要从ItemsControl派生,并将您自己的自定义布局逻辑放在子类中。

答案 1 :(得分:-1)

尝试在UserControl中添加网格,并将其余的孩子添加到该网格中。