Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 未在全屏模式下显示ListPicker项目_C#_Xaml_Windows Phone 8_Toolkit_Listpicker - Fatal编程技术网

C# 未在全屏模式下显示ListPicker项目

C# 未在全屏模式下显示ListPicker项目,c#,xaml,windows-phone-8,toolkit,listpicker,C#,Xaml,Windows Phone 8,Toolkit,Listpicker,我使用了一个工具箱列表选择器。但这些项目不会以全屏模式显示。单击ListPicker时,它是一个空白页,但项目是透明的,甚至可以选择。这似乎是空白页,但有项目 <phone:PhoneApplicationPage x:Class="Sunder_Gutka.SettingPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/

我使用了一个工具箱列表选择器。但这些项目不会以全屏模式显示。单击ListPicker时,它是一个空白页,但项目是透明的,甚至可以选择。这似乎是空白页,但有项目

<phone:PhoneApplicationPage
x:Class="Sunder_Gutka.SettingPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
             xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"

FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait" Orientation="Portrait"
mc:Ignorable="d"
shell:SystemTray.IsVisible="True">

<phone:PhoneApplicationPage.Resources>

    <DataTemplate x:Name="PickerItemTemplate">
        <TextBlock Text="{Binding BackGroundColorArray}" />
    </DataTemplate>

    <DataTemplate x:Name="PickerFullModeItemTemplate" >
        <TextBlock Name="BackgroundColor" 

    Text="{Binding BackGroundColorArray}"                      
                   />
    </DataTemplate>
</phone:PhoneApplicationPage.Resources>



<!--LayoutRoot is the root grid where all page content is placed-->
<Grid x:Name="LayoutRoot" Background="Transparent">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>

    <!--TitlePanel contains the name of the application and page title-->
    <StackPanel Grid.Row="0" Margin="12,17,0,28">
        <TextBlock Text="MY APPLICATION" Style="{StaticResource PhoneTextNormalStyle}"/>
        <TextBlock Text="page name" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
    </StackPanel>

    <!--ContentPanel - place additional content here-->
    <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">

        <toolkit:ListPicker x:Name="BackgroundColor"  FullModeHeader="Select Background Color:" Header="Background Color:" BorderThickness="0" FullModeItemTemplate="{StaticResource PickerFullModeItemTemplate}" ItemTemplate="{StaticResource PickerItemTemplate}" Background="#FF09043C" SelectionChanged="BackgroundColor_SelectionChanged" >

        </toolkit:ListPicker>



    </Grid>
</Grid>

更新您的数据模板:

<phone:PhoneApplicationPage.Resources>
    <DataTemplate x:Name="PickerItemTemplate">
        <TextBlock Text="{Binding}" />
    </DataTemplate>
    <DataTemplate x:Name="PickerFullModeItemTemplate" >
        <TextBlock Name="BackgroundColor" Text="{Binding}"/>
    </DataTemplate>
</phone:PhoneApplicationPage.Resources>


现在开始工作了。我已经实现了这一点。

默认情况下,当您以全屏模式显示项目时,您的项目将以较小的字体显示。因此,您需要做的是将全屏模式下的DataTampleate
ItemTempate
更改为以下内容。。我只是在这里增加了
FontSize
。。你可以做任何你喜欢的造型

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

    <DataTemplate x:Name="PickerFullModeItemTemplate" >
        <TextBlock Name="BackgroundColor" Text="{Binding}" FontSize="{StaticResource PhoneFontSizeLarge}" />
    </DataTemplate>
</phone:PhoneApplicationPage.Resources>


模板的适当样式由您决定。另外,我希望您知道,只有当
列表选择器中的项目超过5项时,
列表选择器才会进入全屏模式。如果没有,您需要手动设置ExpansionMode=“FullScreenOnly”
以使其全屏显示。

它显然可以工作。但是我在全屏上看到了一个丑陋的列表。我试着设计它。在我的另一个项目中,同样的线路运行良好。这里可能有什么问题?你说的“显然”是什么意思?你问了一个简单的问题,这就是答案。现在您正在增加查询。提问时请具体一点。您可以将列表或集合绑定到绑定,因此在这里它不起作用。尝试列表或观察收集,然后它将完美地工作。如果我的答案对您有帮助,请将其标记为已回答,以供其他人将来参考。我告诉您的是,我在页面上获得了列表,我通过调试检查了它,但它没有显示。我已在新项目中实现。代码与上面相同,但区别在于我发布的答案和它的工作原理。列表项正确显示在列表中。要设置它的样式,您需要修改它的默认模板或修改您的数据模板。现在就可以了。但是字体呢。我尝试使用:fontfaliam=“/Sunder Gutka;component/Assets/Fonts/AGENCYR.TTF#Agency FB”,但该列表未显示在此fontferic中
<phone:PhoneApplicationPage.Resources>
    <DataTemplate x:Name="PickerItemTemplate">
        <TextBlock Text="{Binding}" />
    </DataTemplate>

    <DataTemplate x:Name="PickerFullModeItemTemplate" >
        <TextBlock Name="BackgroundColor" Text="{Binding}" FontSize="{StaticResource PhoneFontSizeLarge}" />
    </DataTemplate>
</phone:PhoneApplicationPage.Resources>