No DataType in DataTemplate in Windows Phone(—)
??? 之前WPF/SL用習(xí)慣了,現(xiàn)在研究Windows Phone一段時間,發(fā)現(xiàn)Windows Phone的SDK中做了許多限制,一些WPF/SL的方法屬性都刪掉了。
??? 今天在Windows Phone項目中用到了DataTemplate,用于Listbox的Items樣式修改,但是測試時突然發(fā)現(xiàn)DataTemplate沒有DataType屬性。
如下:
<phone:PhoneApplicationPage.Resources><DataTemplate x:Key="listDataTemplate"><StackPanel Orientation="Horizontal"><TextBlock Text="{Binding UserID}" /><TextBlock Text=" Name: "/><TextBlock Text="{Binding UserName}" /></StackPanel></DataTemplate> </phone:PhoneApplicationPage.Resources>使用<DataTemplate x:Key="listDataTemplate"> 可以,但是
<DataTemplate DataType="{x:Type local:UserList}">卻沒法用,之前在WPF中完全OK的,難道Windows Phone中把這項去掉了?
查看MSDN和百度,Windows Phone中DataTemplate貌似確實沒有DataType的的屬性,但是沒有詳細的說明,so,google之…(google在天朝被墻的太厲害了,很多網(wǎng)頁打不開,而且速度超慢,殘念…)
終于找到了英文的一些文章,Windows Phone中可能是為了性能和平臺緣故,將DataType屬性去掉了,而且更甚的是,DataTemplate中的Trigger也不給支持。
個人認為DataType和Trigger在綁定Itemcontrol的時候非常easy,性能或許會有損失,但是為了些許的損失去掉這么便捷的寫法,真的值得么?
偶爾幾個Control用Key值綁定DataTemplate 還好,但是如果是大量的Control,這樣就非常繁瑣。
OK,Windows Phone中與WPF的區(qū)別具體在哪,我們從代碼出發(fā)查看一下,請看No DataType in DataTemplate in Windows Phone(二)
<phone:PhoneApplicationPage.Resources><DataTemplate DataType="{x:Type local:UserList}"><StackPanel Orientation="Horizontal"><TextBlock Text="{Binding UserID}" /><TextBlock Text=" Name: "/><TextBlock Text="{Binding UserName}" /></StackPanel></DataTemplate> </phone:PhoneApplicationPage.Resources>轉(zhuǎn)載于:https://www.cnblogs.com/haisa/archive/2011/11/25/2263602.html
總結(jié)
以上是生活随笔為你收集整理的No DataType in DataTemplate in Windows Phone(—)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CommandBehavior.Clos
- 下一篇: 网络协议分析工具Ethereal的使用