То есть вы хотите добавить ребенка на холст через стиль?Боюсь, это просто невозможно.Стили позволяют устанавливать значения свойств зависимостей элементов, таких как Высота, Фон, Обводка и т. Д. Вы также можете использовать их для установки вложенных свойств.Однако свойство Children, которое вы пытаетесь установить, не является свойством зависимости, это коллекция дочерних элементов, которые описывают дочерние элементы вашего холста в визуальном дереве.
Единственный способ добавить новые элементы вВизуальное дерево с использованием стилей заключается в добавлении их в некоторые элементы управления шаблоном.К сожалению, вы не можете использовать шаблоны панелей (Canvas, Grid, StackPanel).Вы можете использовать ContentControl и добавить свой прямоугольник как часть его шаблона.
ContentControl - это контейнер без единого дочернего элемента.См. Шаблон, описанный здесь:
http://msdn.microsoft.com/en-us/library/dd334411%28VS.95%29.aspx
Вот, шаблоны для добавления прямоугольника.Я не уверен, какой макет вы пытаетесь достичь, но он должен дать вам общее представление
<Style TargetType="ContentControl" x:Key="myContentControl">
<Setter Property="Foreground" Value="#FF000000"/>
<Setter Property="HorizontalContentAlignment" Value="Left"/>
<Setter Property="VerticalContentAlignment" Value="Top"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ContentControl">
<Canvas>
<Rectangle Canvas.Top="20" Canvas.Left="20" Width="100" Height="100" Fill="Yellow"></Rectangle>
<ContentPresenter
Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
Cursor="{TemplateBinding Cursor}"
Margin="{TemplateBinding Padding}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Canvas>
</ControlTemplate>
</Setter.Value>
</Setter>
<ContentControl Style={StaticResource myContentControl}>
<Canvas x:Name="CanvasRoot" >
<Rectangle x:Name="PageRectangle" Canvas.Left="114" Canvas.Top="84" Height="378" Width="210" Stroke="#92D050" Fill="#C0504D" />
</Canvas>
</ContentControl>