Windows phone中关于TextBox的一些积累

 

1.希望设置调用键盘的类型可以设置TextBox的InputScope属性,微软为我们提供了丰富的类型。例如chat,里面包含一系列的表情符号,并且支持自动填充文字。

2.希望text中夹有表情符号,这个可以用RichTextBox来实现,回头我会分享一下详细的实现过程。详细参考: http://www.cnblogs.com/zhangfan19900327/archive/2013/05/27/3101914.html

3.另外这两天在做一个类似发微博的应用,其中遇到的TextBox的问题。

为了更好的用户体验,希望发微博页面进入时直接激活键盘,呈现输入状态。

 功能很简单,但是却需要对程序的执行原理有所了解(有时往往会被忽略),不然会发生很多意想不到的错误,这是我积累的经验,希望能让也和一样初次用的人少走些弯路。

 

思路很清晰,只要是TextBox获取焦点即可,例如textbox.Focus();即可。

但是会有一些问题存在。

我首次做时把这个方法写到了初始化函数中(习惯性的放入初始化函数中,这个大家也要引以为戒啊),结果一直被激活不了。原因是执行这个方法时,控件还没有加载完成。也就说应该写到LayoutUpdated中,果然写到里面成功的激活了。

但需要注意的是,当该页面下,你还要执行其他方法事件时,你的LayoutUpdated事件仍会执行,,所以最好加个判断,使你的“textbox.Focus();”只执行一次。(注:如果你写在用loaded()事件中则不用考虑,具体以情况而定)

不然你会发现当你你用了this.Focus(); 使TextBox失去焦点时,TextBox并没有失去焦点,而是跳动了一下。

posted @ 2013-05-24 14:45  张小帆  阅读(1040)  评论(6编辑  收藏  举报