WP8.1 Windows Phone 8.1开发:何如定义Pivot头部样式、定义Pivot头部颜色

Windows Phone 8.1 ,如何自定义Pivot头部样式?用Pivot控件完成这样的效果。

网上找了好久,只找到了windows phone 8的解决方案。 终于一个大神给支了招,我觉得我有必要跟诸位开发者分享一下经验。Windows Phone 8.1的开发资料实在太少了。我决定,用一个假期把我知道的都分享出来。

如果,你支持我的做法。请点赞或者评论本条博客、或者去 windows phone 应用商店 下载一个叫【有点意思】的app、再或者遥祝大黑兔减肥成功。 大黑兔将非常高兴。有点意思:http://www.windowsphone.com/zh-cn/store/app/%e6%9c%89%e7%82%b9%e6%84%8f%e6%80%9d/f2e705b4-5fd6-4c69-826b-c2f05c825ef0

好了,扯淡结束,开始工作。

1. 在App.xaml里定义自己的Pivot控件样式。下面的代码加在Application.Resources节点下,这样你的每一个页面就都能用到这个样式了。

<Style TargetType="Pivot">

<Setter Property="Template">

<Setter.Value>

<ControlTemplate TargetType="Pivot">

<Grid

x:Name="RootElement"

HorizontalAlignment="{TemplateBinding HorizontalAlignment}"

VerticalAlignment="{TemplateBinding VerticalAlignment}"

Background="{TemplateBinding Background}">

<VisualStateManager.VisualStateGroups>

<VisualStateGroup x:Name="Orientation">

<VisualState x:Name="Portrait">

<Storyboard>

<ObjectAnimationUsingKeyFrames Storyboard.TargetName="TitleContentControl" Storyboard.TargetProperty="Margin">

<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource PivotPortraitThemePadding}" />

</ObjectAnimationUsingKeyFrames>

</Storyboard>

</VisualState>

<VisualState x:Name="Landscape">

<Storyboard>

<ObjectAnimationUsingKeyFrames Storyboard.TargetName="TitleContentControl" Storyboard.TargetProperty="Margin">

<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource PivotLandscapeThemePadding}" />

</ObjectAnimationUsingKeyFrames>

</Storyboard>

</VisualState>

</VisualStateGroup>

</VisualStateManager.VisualStateGroups>

<Grid.RowDefinitions>

<RowDefinition Height="Auto" />

<RowDefinition Height="*" />

</Grid.RowDefinitions>

<Border Background="Red">

<ContentControl x:Name="TitleContentControl"

Style="{StaticResource PivotTitleContentControlStyle}"

Content="{TemplateBinding Title}"

ContentTemplate="{TemplateBinding TitleTemplate}"/>

</Border>

<ScrollViewer

x:Name="ScrollViewer"

Margin="{TemplateBinding Padding}"

Grid.Row="1"

HorizontalSnapPointsType="MandatorySingle"

HorizontalSnapPointsAlignment="Center"

HorizontalScrollBarVisibility="Hidden"

VerticalScrollMode="Disabled"

VerticalScrollBarVisibility="Disabled"

VerticalSnapPointsType="None"

VerticalContentAlignment="Stretch"

ZoomMode="Disabled"

Template="{StaticResource ScrollViewerScrollBarlessTemplate}">

<PivotPanel x:Name="Panel" VerticalAlignment="Stretch">

<PivotHeaderPanel x:Name="Header" Background="Red">

<PivotHeaderPanel.RenderTransform>

<CompositeTransform x:Name="HeaderTranslateTransform" TranslateX="0" />

</PivotHeaderPanel.RenderTransform>

</PivotHeaderPanel>

<ItemsPresenter x:Name="PivotItemPresenter">

<ItemsPresenter.RenderTransform>

<TranslateTransform x:Name="ItemsPresenterTranslateTransform" X="0" />

</ItemsPresenter.RenderTransform>

</ItemsPresenter>

</PivotPanel>

</ScrollViewer>

</Grid>

</ControlTemplate>

</Setter.Value>

</Setter>

</Style>

2.在调用Pivot的页面中定义,primitives的namespace,加入以下代码。

xmlns:primitives="clr-namespace:Microsoft.Phone.Controls.Primitives;assembly=Microsoft.Phone"

3.在要使用Pivot的页面里,给Pivot指定这个样式:

<Pivot Style="{StaticResource DiaosbookPivotStyle}">
 
收工,走人~
时间: 2024-10-22 15:32:01

WP8.1 Windows Phone 8.1开发:何如定义Pivot头部样式、定义Pivot头部颜色的相关文章

第一个Windows Phone 8 程序开发之后台音频播放

对于播客的音频应该是连续多个的列表,作为在后台连续播放.在网上搜了一下,通过wp8后台音频代理播放,而且例子都是静态的播放列表,不满足动态生成列表播放. 尝试着将播放列表对象声明为公有静态的,在外部对列表进行操作,发现这个静态的播放列表在agent里和我的操作类不是同一个引用,此方法行不通. 最后在 http://www.devdiv.com/forum.php?mod=redirect&goto=findpost&ptid=199381&pid=960706 找到了思路: 在wp

Windows Phone开发中,减小(改变)Pivot控件PivotItem的Header(标题)字号

Pivot,枢轴控件在WP中很常见,比如QQ.自带的照片(WP8.1中)使用的就是这种控件和布局,Pivot中可以包含若干个PivotItem(枢轴项),每个PivotItem可以理解为一个子页面,PivotItem中有Header属性,用来设置PivotItem的标题. 但是,这个Header默认居然不能设置字号!默认的个人认为太大,占据屏幕空间太多,至少在本人之前写的一个应用中需要缩小Header的字号. 百度.谷歌了一大圈,纠结几天时间,终于找到一种改变Header字号的方法. 首先看xa

Windows Phone 8.1 开发技术概览 (Universal APP)

原文:Windows Phone 8.1 开发技术概览 (Universal APP) 前一阵真的比较懒 WP8.1 已经出来这么长时间了现在才更新BLOG让大家久等了,今天我先为大家介绍下 WP 8.1的开发框架,什么是微软所推崇的 Universal APP,以及我们要开发 Universal APP的时候要注意哪些内容. 如果是您是一个刚刚接触 WP开发的朋友可以先看下我之前的文章了解一下故事背景:Windows Phone 8 与 windows 8 开发技术概览 首先给大家完善一个概念

windows phone 8.1开发SQlite数据库操作详解

原文出自:http://www.bcmeng.com/windows-phone-sqlite1/ 本文小梦将和大家分享WP8.1中SQlite数据库的基本操作:(最后有整个示例的源码)(希望能通过本站广告支持小梦,谢谢!) 建立数据库 增加数据 删除数据 更改数据 查询数据 (注:为了让每个操作都能及时显示在UI上,所以进行了数据绑定.数据绑定会在后面文章专门讲解,先给出数据类Note,代表一个笔记.含有Name 和content  属性.其代码如下:如果不清楚,我会在之后讲解): names

Windows下Ionic Android开发环境搭建

转自 http://www.itwap.net/ArticleContent.aspx?id=26 来源: itwap.net 作者: 词略 时间: 2015-4-2 16:57:28 (一)Ionic简单介绍:   首先,Ionic是什么. Ionic是一款基于PhoneGap及AngularJS开发Hybrid/Web APP的前端框架,类似的其他框架有:Intel XDK等. 简单来说就是可以将你的Web应用打包发布成IOS/Android APP,并且提供了PhoneGap之外很多强大的

在windows下进行linux开发:利用Vagrant+virtualbox(ShowDoc与mp3dish的作者)

1,介绍Vagrant 我们做web开发的时候经常要安装各种本地测试环境,比如apache,php,mysql,redis等等.出于个人使用习惯,可能我们还是比较习惯用windows.虽然说在windows下搭建各种开发环境是可行的,各大开发环境都有windows版本.然而在windows下配置有时候会显得繁琐,并且还会导致开发环境(windows)和生产环境(lunix)不一致.能不能在windows下也像linux那样开发?也许你想到了,用虚拟机.用虚拟机装个linux系统就好了.装完lin

Windows系统下Android开发环境搭建

“工具善其事,必先利其器”.要想学好Android,搭建好Android开发环境是一个良好的开端. Windows系统下Android开发环境主要有4个大的步骤.分别是: 1.JDK的安装 2.eclipse的安装 3.Android SDK 的安装 4.Android ADT插件的安装 ---------------------------------------------------------------------------------------------------------

C#学习(九)之Windows Store App &amp; WP 开发小记(一)

由于课程已经讲述完毕,所以本次学习记录就讨论记录一下我在Windows Store App & WP开发中遇到的一些问题与收获. 一.数据库(Sqlite)的使用 虽然资料很难找,但sqlite在这两个平台的使用还是很简单的. 首先是环境配置阶段: 1.工具->拓展与更新->联机,然后在右上搜索sqlite,之后下载安装下图两个打勾的拓展包,注意要重启VS方才生效. 2.项目->管理NuGet程序包->联机,搜索sqlite,安装下图打勾内容,如果项目多出下图两个文件即安装

Windows下搭建PHP开发环境

Windows下搭建PHP开发环境 一.准备工作-所需软件 ·   Apache  \php\httpd-2.2.25-win32-x86-no_ssl.msi ·   PHP \php\php-5.3.1-Win32-VC6-x86.zip ·   Oracle client 10g\php\client 二.安装软件 安装Apache: 双击安装,与安装其他Windows软件没有什么区别,在填Server Infomation时,并没有特殊规定,只要输入的信息符合格式即可. 安装完成之后,在