我有一个ItemsControl
,其项目被模板化为UserControl。
我的ItemsControl.Items
Panel
被模板化为Canvas
。
现在,我手动设置这些usercontrol的width和height属性,它看起来像这样:
<ItemsControl x:Name="curveList"
ItemsSource="{Binding SplineVMList}"
Background="{x:Null}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Canvas x:Name="canvas" Margin="46,60,83,46"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<local:SplineControl Width="300" Height="300" Canvas.Bottom="0" Canvas.Left="0" IsSelected="{Binding IsSelected, Mode=TwoWay}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
<ItemsControl.ItemContainerStyle>
<Style TargetType="ContentPresenter">
<Setter Property="Canvas.Bottom" Value="0"/>
<Setter Property="Canvas.Left" Value="0"/>
</Style>
</ItemsControl.ItemContainerStyle>
</ItemsControl>
我想要的是将我的usercontrol的宽度和高度属性绑定到我的Canvas的属性。
这可能吗?
答案 0 :(得分:0)
您是否尝试过相对源绑定?
e.g。
Width="{Binding ActualWidth,
RelativeSource={RelativeSource AncestorType=Canvas}}"