Pergunta

Eu tenho um UserControl que gostaria de ter mais de um filho. Já tem Stackpanel como criança, então o que estou fazendo de errado?

Por fim, gostaria que o controle incluísse alguns de seus próprios filhos automaticamente e, quando usado, permita colocar mais crianças dentro de um de seus elementos. eu tentei Como substituir a árvore lógica do MSDN sem sucesso.

Desde já, obrigado.

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>
Foi útil?

Solução

Você não pode fazer isso (diretamente) com um UserControl. Em vez disso, você precisará derivar de ItemsControl, e coloque sua própria lógica de layout personalizada na subclasse.

Outras dicas

Tente adicionar grade em seu UserControl e adicione o resto da criança a essa grade.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top