Я бы лучше задал вопрос на примере. Допустим, у меня есть UserControl и Window, который использует этот элемент управления.
Я хотел бы спроектировать этот элемент управления (названный MyControl) таким образом (это синтаксис научной фантастики!):
<Grid>
<Button>Just a button</Button>
<PlaceHolder Name="place_holder/>
</Grid>
и используйте при проектировании моего окна:
<MyControl/>
или
<MyControl>
<place_holder>
<Button>Button 1</Button>
</place_holder>
</MyControl>
или
<MyControl>
<place_holder>
<Button>Button 1</Button>
<Button>Button 2</Button>
</place_holder>
</MyControl>
Конечно, я хотел бы иметь возможность добавлять еще больше элементов в MyControl в Window. Таким образом, он должен работать как контейнер (например, Grid, StackPanel и т. Д.). Размещение будет определено в UserControl (в этом примере после кнопки «Просто кнопка»), но что добавить (какие элементы) будет определено в Window (где используется UserControl - MyControl -).
Надеюсь, это ясно, чего я хотел бы достичь. Ключевым моментом является использование XAML при разработке Window, поэтому мой класс должен быть не хуже других элементов управления.
Итак, большой ВОПРОС - как это сделать?
Замечания: стилизация выходит за рамки. Все, что я хочу сделать, это добавить любые элементы управления, которые я хочу, в MyControl при разработке Window (а не при разработке MyControl).