Windows Phone

Windows Phone
 
WP7图片从独立存储绑定
摘要: 需求:一个ListBox上需要绑定图片,根据情况设置source,可能是isolatedStorage中的文件,也可能是xap中的文件。代码如下:首先是一个Converter的代码,里面有如何从isolatedStorage和xap中读取文件流。public class StringToImageSource : IValueConverter{ #region IValueConv...阅读全文
posted @ 2012-05-23 15:22 MainTao 阅读(136) | 评论 (0) 编辑
 
Windows Phone 7监测网络环境变化
摘要: 有些应用是跟网络环境敏感的,WiFi快且免费,3G走流量,GSM慢,所以我们需要知道如何判断当前的网络类型,以及当网络类型发生改变时如何得到通知。 MSDN相关文章:How To: Detect Network Changes 下面我简单介绍一下。 当网络发生变化时,会引发网络地址发生变化,要监测这一事件,需要用到位于System.Net.NetworkInformation命名空间下的Netw...阅读全文
posted @ 2012-01-03 01:24 MainTao 阅读(519) | 评论 (0) 编辑
 
Blend制作动画
摘要: 在Blend中,有两种WorkSpace:Design和Animation。 Design是默认的,也是最常用的。 设计动画时最好切换到Animation。切换的快捷键是F6。 点+号创建一个StoryBoard,起一个名字,确定后,XAML中该StoryBoard会作为该页面的资源。 点击这个像一个椭圆小蛋右下角一个加号的按钮(record keyframe button),会在当前的时间...阅读全文
posted @ 2011-12-19 11:19 MainTao 阅读(243) | 评论 (0) 编辑
 
用OpacityMask快速制作theme friendly UI
摘要: 首先,要好好解释一下OpacityMask,先来回答几个问题: OpacityMask能做什么呢? 它只能把它所属的控件变得更加透明。 透过来的是什么呢? 透明嘛,当然是挡在所属控件后面的东西了。 它是通过减小所属控件的Opacity属性做到的吗? 不是。控件最终的透明度是由OpacityMask和Opacity共同决定的,它们各司其职。 为什么是Mask? 是为了让所属控件更加灵活更有目的性地...阅读全文
posted @ 2011-12-16 00:21 MainTao 阅读(340) | 评论 (2) 编辑
 
用gradient brush和OpacityMask实现fade edge效果
摘要: 看下面一个gradient brush效果: <Ellipse.Fill> <RadialGradientBrush GradientOrigin="0.3,0.3"> <GradientStop Color="White"/> <GradientStop Color="Transparent" Offset="1"/> </RadialGradientBrush> </Ellipse.Fil...阅读全文
posted @ 2011-12-15 00:03 MainTao 阅读(124) | 评论 (0) 编辑
 
blend 画图
摘要: 选择 select(快捷键V),用来选择图形整体,进行整体的transform(旋转、平移、缩放等)。 select direct(快捷键A),用来选择图形,进行局部的调整。 笔刷 pencil(快捷键Y),记录鼠标的每一个细微变动,生成的图形表达式比较复杂,不推荐使用。 pen(快捷键P),是下面重点要学习的。 在学习钢笔前,先选中钢笔,在右边属性面板将Fill属性reset成no brush...阅读全文
posted @ 2011-12-13 21:40 MainTao 阅读(266) | 评论 (0) 编辑
 
ControlTemplate & DataTemplate
摘要: ControlTemplate和DataTemplate都是用于定制控件的外观,但两者有着很大的区别。 ControlTemplate服务于Control(有形的控件),而DataTemplate服务于Data(无形的数据)。 换句话说,ControlTemplate用于将已有的外观进行改造,DataTemplate是从无到有地构建外观。 ContentControl、ItemsControl类型 ContentControl,它的Content属性包含单个元素,例如Button ItemsControl,它的Items属性包含多个元素,例如Listbox ContentPresent...阅读全文
posted @ 2011-12-08 00:31 MainTao 阅读(225) | 评论 (1) 编辑
 
PhoneApplicationFrame以及设置Obscured/Unobscured的event handler
摘要: 简单描述Sliverlight程序,就是在一个Frame里不停地换Page。在App.xaml.cs里,那个RootFrame(VisualRoot)就是PhoneApplicationFrame类型。 MSDN上关于PhoneApplicationFrame的解释已经做得简洁易读:http://msdn.microsoft.com/en-us/library/ff402536%28v=VS....阅读全文
posted @ 2011-12-01 22:06 MainTao 阅读(243) | 评论 (0) 编辑
 
Windows Phone 7 短信表情
摘要: 至于Metro UI,怎么说呢……不要让它看起来有歧义,否则总有大仙能曲解你的意思。 再来张图,不要让网络耽误了你的正事阅读全文
posted @ 2011-12-01 00:30 MainTao 阅读(107) | 评论 (0) 编辑
 
WP7应用程序生命周期,以及各个event handler分别该做什么
摘要: 在看这篇文章之前,首先应该对下面的图足够了解,并且动手写过WP7程序。 如果有时间,这篇文章值得一看:http://blog.csdn.net/cc_net/article/details/6665737 上图中要注意,在Launch和Close的时候,并不会触发Activated和Deactived事件。 下文中的State泛指Application的State字典和Page的State...阅读全文
posted @ 2011-11-29 00:16 MainTao 阅读(207) | 评论 (0) 编辑
 
第一个WP7程序 开发总结
摘要: 终于做完了一个完整的应用,code name叫Whisper,以后有机会发到marketplace上。 先不说这个应用是干什么的了,把开发过程中突破的技术问题总结一下。 难题1:Listbox控件自动回弹无法停留,看不到最底下的items 原因:这是因为把Listbox放在了StackPanel布局下,因为StackPanel是动态的,不知道自己占多大空间。而Listbox使用数据绑定时也不知道...阅读全文
posted @ 2011-11-22 13:03 MainTao 阅读(332) | 评论 (1) 编辑
 
XAML中的空格、换行、Tab
摘要: 由于XAML是一种XML,在里面写段文字都经常会遇到问题。 * 空格 关于XAML中是如何处理空格的,MSDN上给出了详细的描述:http://msdn.microsoft.com/en-us/library/cc189036%28v=VS.95%29.aspx#whitespace 摘重要的简单说一下: 空格、回车、制表符都被当做空格。 连续的空格会被合并为一个空格。 <tag>后紧邻的空格会...阅读全文
posted @ 2011-11-14 15:04 MainTao 阅读(625) | 评论 (0) 编辑
 
A damn at han’s Windows phone book 笔记(23:序列化,图片)
摘要: 序列化 存储在IsolatedStorageSettings.ApplicationSettings字典中的对象都要能被序列化。所有这些对象都被序列化存放在一个叫做__ApplicationSettings的XML文件中。如果有对象无法成功地序列化进字典,它也不会报错,而是不声不响地失败。 所有的基础类型,基础类型的集合,以及由基础类型构成的类都可以成功序列化,因此可以认为,没有什么是不能序列化的...阅读全文
posted @ 2011-10-23 15:06 MainTao 阅读(126) | 评论 (0) 编辑
 
A damn at han’s Windows phone book 笔记(11:Popup)
摘要: Popup 这个控件常用来做UI hack,属于非常规部队,下面来了解一下Popup。 Popup本身是无形的,但是它可以包含一个子元素,子元素是什么都行。 Popup默认位置是在父元素的左上角,可以通过margin, HorizontalOffset和VerticalOffset来安排位置。 Popup会盖住Z-order在其上层的元素。 例如: 只有IsOpen属性设置为true的时候,...阅读全文
posted @ 2011-10-18 22:29 MainTao 阅读(57) | 评论 (0) 编辑
 
A damn at han’s Windows phone book 笔记(8:Vibration)
摘要: 震动VibrateController.Default.Start(TimeSpan.FromSeconds(.5));参数是振动时间长度,上限是5秒钟。VibrateController.Default.Stop();用户在手机的设置里关掉了震动也不会影响app的震动,只会影响到短信来电等。让程序在手机Lock的时候保持运行有两个全局变量,分别适用于不同的场景:PhoneApplicationS...阅读全文
posted @ 2011-10-16 23:25 MainTao 阅读(34) | 评论 (0) 编辑
 
A damn at han’s Windows phone book 笔记(6:page navigation & data binding)
摘要: NavigationService 用Navigate打开某一页: this.NavigationService.Navigate(new Uri(“/InstructionsPage.xaml”,UriKind.Relative)); 还可以用GoBack和GoForward打开某一页。 用GoBack和GoForward打开的是之前打开过的那个页面的实例,但是用Navigate打开的就是一个新...阅读全文
posted @ 2011-10-16 17:10 MainTao 阅读(48) | 评论 (0) 编辑
 
A damn at han’s Windows phone book 笔记(5:ruler—— canvas)
摘要: Canvas的特点: 和grid, stackpanel等有明显区别:它没有动态布局。子元素放上去后就定住了。 因此canvas的子元素不用设置alignment,margin这些东西,也无法自适应landscape和portrait之间的转换。 如果用canvas做主布局,就要么landscape,要么portrait,最好不要两者都支持。 canvas的默认长宽都是0,超出canvas边界的部...阅读全文
posted @ 2011-10-08 23:28 MainTao 阅读(58) | 评论 (0) 编辑
 
A damn at han’s Windows phone book 笔记(3:ICE——In Case of Emergency)
摘要: SupportedOrientations 和 Orientation SupportedOrientations比较有用,而Orientation只能影响到设计时的状态,无法影响运行时的状态,因此可以不管Orientation。 Landscape分为Left和Right两种 竖直着看的话,Landscape Left是屏幕在键盘左边,Landscape Right是屏幕在键盘右边。 一旦支持...阅读全文
posted @ 2011-09-29 13:53 MainTao 阅读(53) | 评论 (0) 编辑
 
A damn at han’s Windows phone book 笔记(2:Flashlight)
摘要: 添加Application Bar 用 Expression Blend很直观。 添加Application Bar:右击 Objects and Timeline 面板上的PhoneApplicationPage,选择 Add ApplicationBar。 添加ApplicationBarIconButton: 右击ApplicationBar,选择Add ApplicationBarIcon...阅读全文
posted @ 2011-09-27 15:46 MainTao 阅读(62) | 评论 (0) 编辑
 
A damn at han’s Windows phone book 笔记(0-1)
摘要: 快捷键 F1: back按钮 F2:Home(Start)按钮 F3:Search按钮 Pause:用键盘输入取代屏幕键盘 更多快捷键参考:http://bit.ly/emulatorshortcuts 图标 三种按钮图标如下图所示: 如果使用了自定义的图标,需要改一下这个资源的Build Action,要是Content,而不是Resource。 三种Build Action Build...阅读全文
posted @ 2011-09-25 14:00 MainTao 阅读(52) | 评论 (0) 编辑
 
windows phone Design and Interaction Guide 笔记
摘要: 立刻生效,无需确定界面 要允许用户取消上一步操作 进度条 状态栏的顶部有个进度条。分为determinate和indeterminate两种。 可以判断进度的用determinate,例如下载;不能判断进度的用indeterminate,例如连接网络、登录。 主题背景 有黑色背景和白色背景两种,设计UI要考虑全。 输入大分类 • Touch• On-screen keyboard• Hardware keyboard• Microphone• Phone hardware buttons• Sensor 1. Touch touch target & touch element tou阅读全文
posted @ 2011-09-15 14:40 MainTao 阅读(73) | 评论 (0) 编辑
posted @ 2012-11-20 16:31  BellingWP  阅读(258)  评论(0编辑  收藏  举报