WPF UserControl с несколькими дочерними элементами - PullRequest
4 голосов
/ 17 февраля 2010

У меня есть UserControl, в котором я хотел бы иметь более одного ребенка.У него уже есть StackPanel, так как он является дочерним, так что я делаю неправильно?

В конечном счете, я бы хотел, чтобы элемент управления автоматически включал некоторые из своих собственных дочерних элементов, а затем, когда он используется, позволяет помещать больше дочерних элементов внутрь.один из его элементов.Я безуспешно пытался MSDN Как переопределить логическое дерево .

Заранее спасибо.

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 ]

2 голосов
/ 17 февраля 2010

Вы не можете сделать это (напрямую) с помощью UserControl. Вместо этого вам нужно извлечь из ItemsControl и поместить свою собственную логику компоновки в подкласс.

0 голосов
/ 24 сентября 2012

Попробуйте добавить Grid в ваш UserControl и добавить остальных детей в эту сетку.

...