【问题标题】:How to remove the ListPicker Header in Windows Phone 7 toolkit control?如何删除 Windows Phone 7 工具包控件中的 ListPicker 标头?
【发布时间】:2012-01-13 07:35:54
【问题描述】:

有没有什么方法可以完全去除Windows Phone 7 控制工具包ListPicker 中的header?例如,设置标题高度大小 = 0 或类似的东西?

在我的应用程序中,我想删除标题以减少列表选择器占用的空间。我将在列表选择器中使用描述性文本代替默认选定项目(当然还有一个有效值)。我已经解决了那部分。

提前感谢您的帮助!

【问题讨论】:

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


    【解决方案1】:

    从这里下载源代码:

    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 以实现另外 40 像素的空间是否真的值得打破 WP7 范式。但无论如何,你的选择。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多