Windows Phone笔记(2)方向处理之动态布局
2012-02-12 06:38
405 查看
1.动态布局
默认情况下,Windows Phone应用程序在竖屏模式(垂直方向)下运行,当手机改变方向时我们的应用程序也应该能够根据方向的改变做出相应的布局调整。运行之前创建的HelloWindowsPhone项目程序,改变模拟器中屏幕的的方向:MainPage.xaml.cs
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; using Microsoft.Phone.Controls; namespace SilverlightOrientationDisplay { public partial class MainPage : PhoneApplicationPage { // 构造函数 public MainPage() { InitializeComponent(); } private void PhoneApplicationPage_OrientationChanged(object sender, OrientationChangedEventArgs e) { if ((e.Orientation & PageOrientation.Portrait) == (PageOrientation.Portrait)) { Grid.SetRow(buttonList, 1); Grid.SetColumn(buttonList, 0); } else { Grid.SetRow(buttonList, 0); Grid.SetColumn(buttonList, 1); } } } }
运行效果如下:
竖屏,按钮始终在图片下方
![](http://pic002.cnblogs.com/images/2012/294941/2012021206245735.png)
横屏,按钮始终在图片右边。
![](http://pic002.cnblogs.com/images/2012/294941/2012021206261957.png)
![](http://pic002.cnblogs.com/images/2012/294941/2012021206263585.png)
当然除了像我们前面这样,直接在Xaml中PhoneApplicationPage标记中声明方向改变事件之外还可以通过重写基类PhoneApplicationPage的虚方法OnorientationChanged来实现相同的效果。该虚方法是protected的。
好了,让我们来回顾前面介绍的内容:①把MainPage.xaml中的PhoneApplicationPage标记的SupportedOrientations属性值更改为:PortraitOrLandscape页面即可实现屏幕的自动切换。②Margin在页面布局中非常重要,用来设置一个元素所有外边距的宽度。③当屏幕方向发生改变时会触发OrientationChanged事件,通过为事件添加相应代码或者重新此方法以实现相应的效果。
参考资料:
http://msdn.microsoft.com/zh-cn/library/ff769553(v=vs.92).aspx
《Programming Windows Phone 7 Microsoft Silverlight Edition》
作者:晴天猪
出处:http://www.cnblogs.com/IPrograming
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
Windows Phone开发者交流群:79339880,欢迎大家来一起讨论交流,共同学习进步。
相关文章推荐
- Windows Phone开发之路(11) 方向处理之动态布局
- Windows phone开发 页面布局之屏幕方向
- swift开发笔记5 - 设置屏幕方向和代码控制布局
- Windows Phone 7 学习笔记2:感应设备的方向
- 学习android笔记(5) 动态建立TableLayout 表格布局
- Sliverlight页面动态布局学习笔记
- windows phone 8 游戏的屏幕方向和屏幕分辨率处理
- javafx之布局layout及UI控件事件处理canvas,效果,杂乱笔记
- iOS开发学习笔记 -- (二)动态添加控件和事件处理
- Android笔记之动态改变layout中的布局
- Windows Phone学习笔记:在应用程序中处理错误
- 如何处理 Windows Phone 8 动态砖变成黑白砖
- Windows Phone开发之路(12) 方向处理之OritentationChanged事件
- Windows Phone 7的屏幕方向及变更处理
- Windows Phone开发(6):处理屏幕方向的改变
- Windows Phone 7的屏幕方向及变更处理
- Windows Phone开发(6):处理屏幕方向的改变
- Windows Phone开发(6):处理屏幕方向的改变
- Windows Phone开发(6):处理屏幕方向的改变
- Android开发笔记3-- 动态布局