现在的位置: 首页 > 综合 > 正文

Windows Phone 7 Tips (5)

2012年05月04日 ⁄ 综合 ⁄ 共 1856字 ⁄ 字号 评论关闭

1. Windows Phone 7 中的行为(行为、触发器、动作统称为行为)

基类 用法
Behavior < T > This is the simplest form of behavior in that it only exposes OnAttached and OnDetaching methods that you can override. You'd typically use these to wire up event handlers to the AssociatedObject (the XAML element that the behavior is attached to).
TriggerAction < T > One of the most common forms of behavior is the invocation of an action in response to an event. For example, you might want to navigate to a page when the user clicks a button. A TriggerAction allows the designer to specify which event on the associated control the behavior should observe. It then calls the overrideable Invoke method whenever the event triggers.
TargettedTriggerAction < T > The last form of behavior is an extension of the TriggerAction that allows the designer to specify the target element. Within the Invoke method you can reference the Target element, which may not be the same element that the behavior is attached to.

2. Windows Phone 7 中的Orientation的枚举值

 

可以看到横排、竖排等的值,你会很奇怪,怎么数字这么没有规律,我们来看下这些数字对应的二进制值

 

你有没有注意到Portrait相关的最低为都是1?

 3. Windows Phone 7 在设计页面布局时需要考虑横排、还是竖排。Orientation的一些策略为: Fixed Orientation、Auto-Layout、Manual Intervention、Changing States、Smoothing Transition

 4. 在Windows Phone 7 中,点击输入框弹出来的键盘称为SIP(Soft Input Panel),我们可以使用Pause Break在换电脑的键盘与SIP的切换

 5. ApplicationBar 暴露一个名为StateChanged事件,在该事件中你可以检测ApplicationBar是否显示,然后你可以在其中做一些界面布局的调整

 6. Windows Phone 7 中页面布局有如下几种方式

 

 7. 使用VSM跳转到指定的状态(State)

VisualStateManager.GotoState(this.btnTest,"Pressed",true);

 8. Windows Phone 7 中的EnableFrameRateCounter 是监视程序运行时的帧速率的

 9. TemplateVisualState有一个名为GroupName的属性,指定为同一名称下的两个状态不能同时达到

10. HttpWebRequest和WebClient的区别(From Linzheng):

1,HttpWebRequest是个抽象类,所以无法new的,需要调用HttpWebRequest.Create();
2,其Method指定了请求类型,这里用的GET,还有POST;也可以指定ConentType;
3,其请求的Uri必须是绝对地址;
4,其请求是异步回调方式的,从BeginGetResponse开始,并通过AsyncCallback指定回调方法;
5,WebClient 方式使用基于事件的异步编程模型,在HTTP响应返回时引发的WebClient回调是在UI线程中调用的,因此可用于更新UI元素的属性,例如把 HTTP响应中的数据绑定到UI的指定控件上进行显示。HttpWebRequest是基于后台进程运行的,回调不是UI线程,所以不能直接对UI进行操作,通常使用Dispatcher.BeginInvoke()跟界面进行通讯。

 

抱歉!评论已关闭.