В настоящее время у меня есть класс, который наследуется от Control, и я придаю ему индивидуальную форму, установив его стиль в стиле, определенном в ресурсах xaml:
<Style x:Key="ParameterStyle" TargetType="{x:Type local:ParameterUI}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:ParameterUI}">
<Canvas>
<Ellipse
x:Name="component"
HorizontalAlignment="Left" Height="50"
Margin="0,0,0,50" Stroke="#FF8E8E9F"
VerticalAlignment="Top" Width="50"
StrokeThickness="1.5" Fill="#FF202020"/>
</Canvas>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Мне удалось определить все виды мышисобытия на этом элементе управления и заставить его вести себя так, как я хочу.Теперь я хочу динамически добавлять вложенные элементы управления в этот элемент управления, и я хочу, чтобы каждый из этих вложенных элементов управления имел пользовательские фигуры, события мыши и т. Д., Все они были определены во время выполнения.Почти ни один пользовательский интерфейс не является статическим, поэтому все определяется во время выполнения.Я попытался добавить элементы управления, кнопки как визуальные дочерние элементы, логические дочерние элементы, и ничего не отображается в пользовательском интерфейсе.Я даже не вижу ничего в живом визуальном дереве.Что я здесь не так делаю?Должен ли я придерживаться другого подхода?Как я могу получить доступ к Style> Setter.Value> ControlTemplate> Canvas во время выполнения, чтобы добавить к нему больше контента?Кроме того, содержание отличается для каждого экземпляра элемента управления.
Я видел это сообщение , в котором задается очень похожий вопрос, но ответ - словесное описание, и я не знаю, как это сделать.реализовать это.Я также нашел много решений, которые пишут статический пользовательский интерфейс в xaml, но когда я пытаюсь воссоздать его в C #, он просто не работает.Я не мог найти другие примеры того, как это сделать.Любая помощь приветствуется, спасибо!