Windows Phone 7编程学习点滴二——设备方向、系统主题和系统托盘

1 有两种方式可以改变设备的方向:

(1) 将SupportedOrientation设置为“PortraitOrLandscape”让操作系统为你实现。

(2) 是通过代码实现: OrientationChanged 事件。

1 this.OrientationChanged += new EventHandler<OrientationChangedEventArgs>(MainPage_OrientationChanged);  
 1 void MainPage_OrientationChanged(object sender, OrientationChangedEventArgs e)
 2 {
 3             if ((e.Orientation == PageOrientation.LandscapeRight) || (e.Orientation == PageOrientation.LandscapeLeft))
 4             {
 5                 TitlePanel.Visibility = Visibility.Collapsed;
 6             }
 7             else if ((e.Orientation == PageOrientation.PortraitDown) || (e.Orientation == PageOrientation.PortraitUp))
 8             {
 9                 TitlePanel.Visibility = Visibility.Visible;
10             }
11         }
12 }  

2 系统主题

在Visual Studio中右击此项目,选择“Open In Expression Blend…” 或在View菜单中选择“Open In Expression Blend…”。

在Blend的UI中有一个标签叫“Device”,看起来像这样:

<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-->
<Rectangle Stroke="Black" Grid.RowSpan="2">
<Rectangle.Fill>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="{StaticResource PhoneBackgroundColor}" Offset="0"/>
<GradientStop Color="{StaticResource PhoneAccentColor}" Offset="1"/>
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
<!--TitlePanel contains the name of the application and page title-->
<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
<TextBlock x:Name="ApplicationTitle" Text="BLANKENSOFT" Style="{StaticResource PhoneTextNormalStyle}" mce_Style="{StaticResource PhoneTextNormalStyle}"/>
<TextBlock x:Name="PageTitle" Text="system theming" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}" mce_Style="{StaticResource PhoneTextTitle1Style}">
<TextBlock.Foreground>
<SolidColorBrush Color="{StaticResource PhoneAccentColor}"/>
</TextBlock.Foreground>
</TextBlock>
</StackPanel>
<!--ContentPanel - place additional content here-->
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<TextBlock Height="601" TextWrapping="Wrap" HorizontalAlignment="Left" Margin="0,6,0,0" x:Name="textBlock1" Text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur mollis turpis sit amet diam elementum molestie. Cras quis massa ante. Morbi sit amet arcu quam, non dignissim nibh. Nunc lectus leo, ornare quis imperdiet id, fringilla vel diam. Proin vitae augue non sem sollicitudin imperdiet ut quis diam. Nulla vitae nulla eros. Curabitur mauris justo, eleifend eu sodales ac, blandit vitae mauris. Pellentesque erat lorem, euismod at sodales eget, sollicitudin sed velit. Praesent est sapien, hendrerit tempor tincidunt quis, posuere ac nunc. Nam odio nisl, feugiat eget blandit sit amet, dapibus id tellus. Sed blandit nisi nunc. Aliquam fermentum justo tristique risus porta sollicitudin. Aenean aliquam congue ornare. Curabitur blandit mi quis odio convallis adipiscing." VerticalAlignment="Top" Width="468" />
</Grid>
</Grid>  

系统托盘

shell:SystemTray.IsVisible

时间: 2024-10-12 12:03:09

Windows Phone 7编程学习点滴二——设备方向、系统主题和系统托盘的相关文章

Windows API 编程学习记录&lt;二&gt;

恩,开始写Windows API编程第二节吧. 上次介绍了几个关于Windows API编程最基本的概念,但是如果只是看这些概念,估计还是对Windows API不是很了解.这节我们就使用Windows API 让大家来了解下Windows API的用法. 第一个介绍的Windows API 当然是最经典的MessageBox,这个API 的作用就是在电脑上显示一个对话框,我们先来看看这个API的定义吧: int WINAPI MessageBox(HWND hWnd, LPCTSTR lpTe

DirectX游戏编程学习(二)文本显示与基本图元绘制

一.文本显示 在游戏开发中,在游戏界面上现实一些文字信息是很常见的一件事,要学习DX游戏开发,显然了解DX文本如何显示是必不可少的.字符包含诸多的属性,比如颜色,大小,是否加粗,斜体,等等.我们通过DX提供的LPD3DFONT对象来指定这些字体属性,然后再进行渲染. 采用WIN32程序框架实现文本绘制的具体流程如下: 二.基本图元的绘制 无论再复杂的物体,它归根结底都是由基本图元构成的.在CG(Computer graphics)领域,人们普遍使用一组或者多组包围物体表面的多边形近似的表示真实的

python编程学习进度二

今天是学习python编程的第二天,今天仍然是看<Python编程从入门到实战>这本书,下面是主要学习的东西的总结 1.程序输入和raw_input()内建函数 从用户得到数据输入的最好方式使用raw_input()函数,它读取标准输入,并将读取到的数据赋值给指定的变量. 注释: 和大部分脚本及Unix-shell语言一样,python也使用 # 符号标示注释,从#开始直到一行结束的内容都是注释 操作符 和其他大多数语言一样,Python中的标准算数操作符以你熟悉的方式工作.加.减.乘.除.取

PHP面向对象编程学习之二

接口 接口就是把不同类的共同行为经行了定义,然后在不同的类里面实现不同功能.当有很多人一起开发一个项目时,可能都会去调用别人写的一些类,那你就会问,我怎么知道他的某个功能的实现方法是怎么命名的呢,这个时候PHP接口类interface就起到作用了,当我们定义了一个接口类时,它里面的方式是下面的子类必须实现的,比如 : <?php interface Shop { public function buy($gid); public function sell($gid); public funct

windows API 核心编程学习心得

一.错误处理 在内部,当windows函数检测到错误时,它会使用“线程本地存储区”的机制将相应的错误代码与“主调线程”关联到一起. winError.h 一般在C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include这个目录下面. 每个错误都有三种表示: 1.一个消息ID 2.消息文本 3.一个编号 要查看具体是什么错误,请调用GetLastError函数. Error lookup 软件用来查看消息编号对应的错误消息文本. FormatMess

FFmpeg编程学习笔记二:音频重采样

ffmpeg实现音频重采样的核心函数swr_convert功能非常强大,可是ffmpeg文档对它的注释太过简单,在应用中往往会出这样那样的问题,其实在读取数据->重采样->编码数据的循环中在第一次执行swr_convert后还应用swr_convert再作个缓存检测看看是否还有数据,如果有就要把它写到FIFO中去,留在下次再使用,这点在转码和由低向高转换采样率时特别重要. 下面一段简单的代码,摘自我自已写的测试程序. const int frame_size = FFMIN(fifo_size

linux sheel编程学习笔记(二) --- grep命令

Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户. grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板.如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名.搜索的结果被送到标准输出,不影响原文件内容. grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板搜索成

CUDA编程学习(二)

将数据加载到GPU后,如何在grid下的block进行并行计算(一个grid包含多个block) /****How do we run code in parallel on the device****/ /****Use block****/ _global_ void add(int *a, int *b, int *c) { c[blockIdx.x] = a[blockIdx.x] + b[blockIdx.x]; } #define N 512 int main() { int *a

并发编程学习总结(二) : 详解 线程的6种不同状态

(一) 线程状态: 我们先讨论一下线程的几种状态: java中Thrad.State总共有6中状态: (1)New (新创建) (2)Runnable (可运行) (3)Bolcked (被阻塞) (4)Waiting (等待) (5)Timed Waiting (计时等待) (6)Terminated (被终止) 这里先列出各个线程状态发生的条件,下面将会对每种状态进行详细解析和代码实例. 下面我们分别看一下线程的这6中状态分别出现在什么情况下. (1)New (新创建) 当我们执行new T