如何删除Windows Phone 7工具包控件中的ListPicker标头?

时间:2012-01-13 07:35:55

标签: windows-phone-7.1 windows-phone-7 windows-phone

有没有办法彻底删除Windows Phone 7控件工具包ListPicker中的标头?例如,设置标题高度大小= 0或类似的东西?

在我的应用中,我想删除标题,以减少列表选择器占用的空间。我将在列表选择器中使用带有描述性文本的默认选定项目(以及当然的有效值)。我已经解决了这个问题。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

从这里下载源代码:

http://silverlight.codeplex.com/SourceControl/changeset/changes/71382

打开ListPickerPage.xaml(Microsoft.Phone.Controls.Toolkit - > ListPicker)

找到这段代码:

<!-- Header Title -->
        <TextBlock
            x:Name="HeaderTitle"
            Grid.Row="0"
            FontFamily="{StaticResource PhoneFontFamilySemiBold}"
            FontSize="{StaticResource PhoneFontSizeMedium}"
            Foreground="{StaticResource PhoneForegroundBrush}" Visibility="Collapsed"
            Margin="24 12 12 12">
            <TextBlock.Projection>
                <PlaneProjection RotationX="-90"/>
            </TextBlock.Projection>
        </TextBlock> 

请注意,可见性现在设置为折叠

然后,在它下面,找到ListBox代码

 <!-- List of Items -->
        <ListBox
            x:Name="Picker"
            Grid.Row="1"
            ItemsSource="{Binding}"
            Opacity="0"
            toolkit:TiltEffect.IsTiltEnabled="True"
            Margin="24 -24 0 0" 
            Tap="OnPickerTapped"/>
    </Grid>

请注意,我将此处的边距更改为-24。

与它混在一起,直到找到你需要的外观。确保您的应用程序使用在构建Silverlight Toolkit项目时创建的DLL。

可能有更好的方法。例如,您可以创建自己的PickerPageUri

但是,我并不完全确定以这种方式修改UI以实现另外40px的空间真的值得打破WP7范例。但无论如何,你的选择。