1

我在 ListPicker 完整模式项中有 Grid 。网格有两列。第一列应左对齐,第二列右对齐。

不幸的是,这个模板不能按预期工作:

<DataTemplate x:Name="ListFullModeItemTemplate">
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="auto"/>
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>

        <TextBlock Grid.Column="0" Text="{Binding Name}" />
        <TextBlock Grid.Column="1" Text="{Binding Description}" HorizontalAlignment="Right" />
    </Grid>
</DataTemplate>

第二个 TextBlock 未右对齐。

当我将 Grid Width 属性设置为特定值时,即

<Grid Width="700">
    ...
</Grid>

然后它可以工作,但我不能这样做,因为用户可以将手机旋转到纵向/横向。

有任何想法吗?

编辑:我在 ListBox 中也遇到了同样的问题。我通过添加来修复它:

<ListBox.ItemContainerStyle>
    <Style TargetType="ListBoxItem">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate>
                    <ContentPresenter HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
                 </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</ListBox.ItemContainerStyle>

我不能在 ListPicker 中使用它,因为它没有 ItemContainerStyle 元素。

4

2 回答 2

0

尝试添加TextAlignment="Right"

于 2012-10-14T07:32:43.167 回答
0

设置你的 grid 的宽度。

并通过 += 更改它: OrientationChanged += new EventHandler(SecondPage_OrientationChanged);

于 2012-10-15T08:17:05.180 回答