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并没有失去焦点,而是跳动了一下。