如何在Windows Phone 8.1 Silverlight中填充ListPicker而不会出现问题

时间:2015-11-30 03:14:01

标签: c# windows-phone-8.1

这是我在XAML上的ListPicker:

<toolkit:ListPicker  x:Name="CursoLista" Header="Curso" ItemsSource="{Binding}">
                    <toolkit:ListPicker.ItemTemplate>
                        <DataTemplate>
                            <StackPanel>
                                <toolkit:ListPickerItem Content="{Binding Curso}"/>
                            </StackPanel>
                        </DataTemplate>
                    </toolkit:ListPicker.ItemTemplate>
                </toolkit:ListPicker>

和Cs文件:

ObservableCollection<FgCurso> ObjCurso = new ObservableCollection<FgCurso>();

FgCurso班级

class FgCurso
{
    public String Curso { get; set; }
}

和班级的实例

public void ListaCurso()
    {
        ObjCurso.Add(new FgCurso { Curso = "Administração" });
        ObjCurso.Add(new FgCurso { Curso = "CCO" });
    }

CursoLista.ItemsSource = ObjCurso;

工作正常,问题是,当我在ListPicker中放入超过5个itens时它不起作用,我得到this

我不知道如何解决这个问题!

1 个答案:

答案 0 :(得分:0)

ListPicker超过5件时,它将以全屏模式打开。在完整模式下,还应提供FullModeItemTemplate以正确格式显示的项目。

<DataTemplate x:Key="FullModeTemplate">
   <.../>
</DataTemplate>

<DataTemplate x:Key="NormalTemplate">
   <.../>
</DataTemplate>

<ListPicker ItemTemplate="{StaticResource NormalTemplate}" FullModeItemTemplate="{StaticResource FullModeTemplate}" />

ItemTemplate将在页面中展开时使用ListPicker,而FullModeItemTemplate将在完整模式下展开时使用{{1}}。