XAML中的方形框架元素为Windows Store 8或Windows Phone 8安装/填充其父元素

XAML中的方形框架元素为Windows Store 8或Windows Phone 8安装/填充其父元素,xaml,windows-phone-8,windows-store-apps,multibinding,Xaml,Windows Phone 8,Windows Store Apps,Multibinding,我希望在XAML中有一个宽度和高度相等的FrameworkElement,用于Windows Store 8和Windows Phone 8(不一定是同一个解决方案),适合(或填充)其父元素,而不将宽度和高度硬编码为特定值 在本例中,我将使用,但它可以是任何框架元素 我尝试了以下操作,它将根据父对象的宽度生成一个FrameworkElement正方形。但我无法根据父母身高和宽度之间的“最小”(或最大)值使其成为正方形 <Grid x:Name="LayoutRoot"> &l

我希望在XAML中有一个宽度和高度相等的FrameworkElement,用于Windows Store 8和Windows Phone 8(不一定是同一个解决方案),适合(或填充)其父元素,而不将宽度和高度硬编码为特定值

在本例中,我将使用
,但它可以是任何框架元素

我尝试了以下操作,它将根据父对象的宽度生成一个FrameworkElement正方形。但我无法根据父母身高和宽度之间的“最小”(或最大)值使其成为正方形

<Grid x:Name="LayoutRoot">
    <Image
        Height="{Binding ActualWidth, ElementName=LayoutRoot, Mode=OneWay}"
        HorizontalAlignment="Stretch"
        />
</Grid>

我尝试了以下内容,但据说它只是缩放,实际上并没有调整FrameworkElement的大小。高度和宽度仍将为“1”:



我听说过
(仅适用于Windows Store 8,遗憾的是不适用于Windows Phone 8),但我无法对方块行为进行编码。

要理解您要做的事情有点困难。我想你的意思是你想在拉伸时保持纵横比?您可以使用viewbox进行此操作。你的选择是,和
<ViewBox Stretch="Uniform">
    <Image
        Height="1"
        Width="1"
        />
</ViewBox>