No DataType in DataTemplate in Windows Phone(—)

來源:互聯網
上載者:User

    之前WPF/SL用習慣了,現在研究Windows Phone一段時間,發現Windows Phone的SDK中做了許多限制,一些WPF/SL的方法屬性都刪掉了。

    今天在Windows Phone項目中用到了DataTemplate,用於Listbox的Items樣式修改,但是測試時突然發現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在天朝被牆的太厲害了,很多網頁打不開,而且速度超慢,殘念…)

終於找到了英文的一些文章,Windows Phone中可能是為了效能和平台緣故,將DataType屬性去掉了,而且更甚的是,DataTemplate中的Trigger也不給支援。

個人認為DataType和Trigger在綁定Itemcontrol的時候非常easy,效能或許會有損失,但是為了些許的損失去掉這麼便捷的寫法,真的值得嗎?

偶爾幾個Control用Key值綁定DataTemplate 還好,但是如果是大量的Control,這樣就非常繁瑣。

OK,Windows Phone中與WPF的區別具體在哪,我們從代碼出發查看一下,請看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>
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.