C# WinRT(metro应用程序)中ItemsControl的高度和宽度属性绑定不起作用

C# WinRT(metro应用程序)中ItemsControl的高度和宽度属性绑定不起作用,c#,xaml,windows-runtime,C#,Xaml,Windows Runtime,我已将Height和Width属性与其父属性绑定,而调整metro应用程序的大小(通过捕捉)时,绑定不起作用 <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="local:MyControl"> <Grid > <local:MyPa

我已将Height和Width属性与其父属性绑定,而调整metro应用程序的大小(通过捕捉)时,绑定不起作用

<Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="local:MyControl">
                <Grid   >
                    <local:MyPanel Height="{TemplateBinding Height}" Width="{TemplateBinding Width}" >
                        <ContentPresenter VerticalAlignment="Center" HorizontalAlignment="Center" Content="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=MainContent}"/>
                        <ItemsControl  ItemsSource="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=SubContents}"   
                                       VerticalAlignment="Center" HorizontalAlignment="Center" >
                            <ItemsControl.ItemsPanel >
                                <ItemsPanelTemplate>
                                    <local: MyPanel Height="{TemplateBinding Height}" Width="{TemplateBinding Width}"  />
                                </ItemsPanelTemplate>
                            </ItemsControl.ItemsPanel>
                        </ItemsControl>
                    </local:MyPanel>
                </Grid>
            </ControlTemplate>
        </Setter.Value>
    </Setter>


尝试了TemplateBinding、TemplatedParent、ElementNameBinding以及Height和ActualHeight属性,但没有成功。

您能添加代码吗??使用ActualWidth和ActualWidth进行绑定Hi Heena,ActualWidth和ActualWidth也不起作用,修改了问题,请查找上面的代码段。这假设MyControl实例具有正确的宽度/高度,无论是显式(如果使用宽度/高度)还是有效(如果使用ActualWidth/高度)。如果只查看控件模板中的外部网格,大小是否正确?我想是的,这样子项在调整控件大小(捕捉metro应用程序)时也会获得相应的大小@尼古拉斯W