3

我有一个 ListPicker,当我单击它时,我会弹出全屏窗口,但是那里的选项都很小,而且无论出于何种原因我都无法更改 FontSize。

代码:

<phone:PhoneApplicationPage.Resources>
    <DataTemplate x:Name="PickerFullItemTemplate">
        <StackPanel>
            <TextBlock Text="{Binding Number}"/>
        </StackPanel>
    </DataTemplate>
</phone:PhoneApplicationPage.Resources>


<toolkit:ListPicker ExpansionMode="FullScreenOnly" Name="Picker" ItemsSource="{Binding Number, ElementName=this}" FullModeItemTemplate="{Binding PickerFullItemTemplate}" />

如何使全屏弹出窗口大小为 36 字体的文本?

编辑:我应该提到,如果我在模板中设置字体大小(如下所示)它不起作用。我可以在列表选择器上设置字体大小,但显然这不会改变完整模式弹出窗口。此外,我已将 ListPicker 从 Pivot 中取出,并尽可能多地注释掉它,因此没有什么可能覆盖此设置,但仍然没有。

4

3 回答 3

5

请执行下列操作:

1)使用您的值列表创建一个类

public class Number
{
    public IEnumerable<string> number { get { return "AA1,AA2,AA3".Split(','); } }
}

2)在xaml文件的顶部声明你的项目的命名空间

xmlns:local="clr-namespace:YourAppNameSpaceGoesHere"

3) 在 PhoneApplicationPage Resources 部分中将您的类声明为资源

4) 在您的 DataTemplate TextBlock 中,只需将 Text 值定义为“{Binding}”并设置您的 FontSize

<phone:PhoneApplicationPage.Resources>
    <local:Number x:Key="Number"/>
    <DataTemplate x:Name="PickerFullItemTemplate">
        <StackPanel>
            <TextBlock Text="{Binding}" FontSize="36"/>
        </StackPanel>
    </DataTemplate>
</phone:PhoneApplicationPage.Resources>

5) 包装你的 ListPicker 控件是一个像 Grid 一样的容器控件,并将 Grid 的 DataContext 设置为你的类

6) ListPicker 中的 FullModeItemTemplate 应定义为 StaticResource

    <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0" DataContext="{StaticResource Number}">
        <toolkit:ListPicker ExpansionMode="FullScreenOnly" Name="Picker" ItemsSource="{Binding number}" FullModeItemTemplate="{StaticResource PickerFullItemTemplate}" />
    </Grid>
于 2013-03-12T04:51:07.687 回答
0

以下应该工作。

<DataTemplate x:Name="PickerFullItemTemplate">
    <StackPanel>
        <TextBlock Text="{Binding Number}" FontSize="36"/>
    </StackPanel>
</DataTemplate>
于 2013-03-11T09:37:22.900 回答
0

怎么样:

<Style x:Key="LPickFullModeTxtBlock" TargetType="TextBlock">
     <Setter Property="FontSize" Value="30"/>
</Style>

<toolkit:ListPicker.FullModeItemTemplate>
     <DataTemplate>
         <TextBlock Text="{Binding bindProp}" VerticalAlignment="Top" HorizontalAlignment="Left" Style="{StaticResource LPickFullModeTxtBlock}"></TextBlock>
     </DataTemplate>
</toolkit:ListPicker.FullModeItemTemplate>
于 2014-10-29T07:27:55.723 回答