如何在Windows Phone 7中使用VisualState布置屏幕方向处理
VisualState是什么? VisualState指定控件处于特定状态时的外观。 例如,按下Button时,它的边框颜色可能与正常时的颜色不同。VisualState类具有更改控件外观的Storyboard 属性。控件进入VisualState.Name属性指定的状态时,Storyboard开始。控件退出该状态时,Storyboard停止。 例如CheckBox就有下面几种状态组: 使用Vi...
windows phone中TextBox的诡异事件TextChanged
在做项目时经常会遇到一些问题,但在解决问题后没有来得及总结或记录,慢慢的就遗忘了。每当此时总是觉得有一丝丝遗憾,今天回想起一件过去的问题,随即提键记录。 开门见山,问题是这样的,向TextBox中每输入一个字符TextChanged事件会激发两次,通过单步调试发现的确是执行了两次。Why? 如图: 代码如下 前台XAML和后台C#: <phone:PhoneApplicationPage ...
Windows Phone应用PhoneGap之编写短信插件
在这篇文章中,将展示如何在WindowsPhone上使用PhoneGap开发发送短信的应用,我们将通过Microsoft.Phone.Tasks命名空间中的SMSCompose来实现。PhoneGap有实现对之进行封装的短信插件。 PhoneGap提供不少跨平台的API用于处理各个平台之间的差异,包括定位、存储、声音等等。而你的程序只需要使用PhoneGap提供的统一接口即可。但某些平台具有一些其...
Windows Phone应用PhoneGap之处理屏幕旋转
本文主要介绍在WindowsPhone7下使用PhoneGap在处理屏幕旋转时的方法,也就是说当用户将手机从横屏到竖屏转换时,屏幕上的内容应该相应的进行调整,否则可能会导致某些元素显示异常而影响交互。 首先我们在VisualStudio使用PhoneGap的项目模版创建一个新项目: 你需要点开上图界面中左边面板的VisualC#才能显示模版的列表。 创建完项目后,这是一个Sliverlightf...
Windows Phone中FrameworkDispatcher异常处理
当你在Silverlight或是Windowsphone应用程序中通过引用Microsoft.Xan.Framework尝试通过后台任务播放一段音频文件或是记录音频时.通常会遇到如下关于FrameworkDispatcher异常信息: 一旦尝试在后台任务记录或播放一段音频文件.总是提示Application没有调用FrameworkDisplatcher.Update()方法.当你使用XNA对象...
Windows Phone 7中实现ListBox的分页加载
ListBox的分页加载,相信在很多应用中大家都已经见到过了。但是在WP7开发中,这个功能开发起来似乎是不那么直观(因为没有那么个 ScrollEnd事件),我在学习开发这个功能的时候第一步是先百度谷歌Bing的,为了不重复造轮子。其实有很多人都在问这个问,大家的共同关注点只 有一个,就是如何判断ListBox的滚动条滚动到了底部,所以,此篇文章我也就只围绕如何判断滚动到底来展开了,其他的部分暂略...
Windows Phone 7 模拟选择框列表效果
对WP7系统里自带的动画效果很感兴趣,看到了一个CheckBoxList(自己起的名字,呵呵)显示隐藏CheckBox的效果(比如WIFI的高级设置选项列表),于是简单模仿下。 首先创建一个工程,然后添加一个自定义控件。 起名字:CheckBoxListItem. 下面开始在这个自定义控件里组装零件。 模拟一下的,所以很简单,一个CheckBox,一个TextBlock放在StackPanel里...
Windows Phone无法Debug的解决办法
接触WindowsPhone这么长时间以来,最近突然发现经常WindowsPhone在模拟器上不能debug的问题,而新建一个Project是可以的。 1.问题描述如下: 项目在前几天还能打开,但是并没有修改代码或者代码修改,但是仔细排查后没有问题,但是F5 Debug时,观察任务栏显示Connect—>deploy,然后LaunchUITask时WindowsPhone Emulator自...
Windows Phone 7中在ListPicker控件的选择页面上播放铃声
在SilverlightforWindows Phone里,MediaElement有一个很特别的限制,你必须把它添加到可视化树,否则它不会播放。假设我们在铃声设置页面上添加一个播放按钮,如 图1所示,接着在这个按钮的Click事件处理程序里创建MediaElement对象,然后通过它播放预先添加的铃声(这个铃声文件的Build Action属性的值是Content),如代码1所示。 图1铃声设...
Windows Phone 7如何读取资源文件
在WindowsPhone7开发过程中我们经常需要用到很多资源文件,比如城市名字和拼音对应列表等等。 这类文件为什么要作为本地资源文件用呢?一般是因为: 1、我们不喜欢把这些资源硬编码到代码里,比如一个城市列表“北京-Beijing、上海-Shanghai、……”,如果硬编码到代码里显然不如弄到XML(或者JSON,甚至是TXT文件)里灵活。 2、尽管这种资源可以从网络上获取,但对于操作频繁的...
WP7中AppBarUtils使用指南
我们知道,WindowsPhone的ApplicationBar并不支持数据绑定,这意味着我们无法像Silverlight的Button控件那样把ApplicationBar上的按钮或者菜单项直接绑到视图模型的命令属性。 为了解决这个问题,我们可以借助一些第三方工具包,比如今天我给大家介绍的AppBarUtils,它提供了一组Expression Blend行为,可以实现ApplicationBa...
Windows Phone 7 - XNA多点触摸
XNA中对游戏的控制必然用到触摸事件(WindowsPhone的XNA涉及到的按钮只有一个那就是BACK按钮,其余的交互都必须通过触摸事件来完成) XNA处理触摸事件的命名空间是Microsoft.Xna.Framework.Input.Touch(官方示例文档:http://msdn.microsoft.com/en-us/library/ff434208.aspxAPI:http://msdn...
Windows Phone 7在调试过程中显示日志
开发过程中,需要使用log来记录程序运行状态。 WP7SDK给出一个在debug模式下打印日志的方法。VS开发中默认就是debug模式,我们要做的就是调用打印日志的方法。 Debug.WriteLine(StringlogMsg) 使用方法: 引入命名空间: 1:usingSystem.Diagnostics;然后就可以再想要打印日志的地方使用Debug.WriteLine方法打印日志,参数是日志...
Windows Phone中使用TombstoneHelper简化墓碑操作
由于WindowsPhone目前不支持第三方应用程序在后台运行,微软提供了另一种方法称之为Tomstone,虽然在Mango更新中支持了所谓的“多任务”,但是我们还是需要处理墓碑化,有没有一些方法简化我们的墓碑化操作呢,当然是有。在CodePlex就有这么一个开源项目,TombStoneHelper 下面以一个具体的Demo演示如何使用这个帮助类库简化我们的墓碑化代码。 建立项目wp7Tombst...
如何在Windows Phone中保存和加载图片
在WindowsPhone中,我们可能会有这样的需求:自定义应用程序的背景图片。 实际的流程是这样:用户选择图片,保存至隔离存储空间,(下一次启动时或者立即)加载图片使其成为背景图片。 下面以具体的一个Demo来实现这一需求: 创建WindowsPhone项目,在界面中拖放两个按钮,命名为Open和Load,一个按钮负责打开本地图片,另一个按钮复制设置背景图片 点击Open按钮,需要打开本...