WP8.1對開發者的影響要遠大於對用戶的影響。這篇博客就來一塊兒看看哪些WP8.0中的控件被移除或替換,這些控件的介紹在MSDN上都很是的詳細,因此這裏只給出一些簡單的介紹,來對比8.1和8.0中的控件的差異,若是想要看控件的具體使用方法能夠在MSDN上查看,以後也會給出MSDN上的連接。html
在上一篇博客中咱們安裝完VS2013UPDATE2RC以後,首先看到的一個變化就是Hub App。原有的Panorama控件已經不見了,Hub控件用HubSection替換掉原來的PanoramaItem,HubSection必須指定DataTemplate屬性。兩個控件的用法是很是相似的,須要提到的一點不一樣是,Hub控件若是在只有不會HubSection的狀況下不會像Panorama那樣能夠一直朝一個方向滑,若是大於兩個那就和Panorama同樣了,一些屬性的名稱也有變化,詳細信息。web
<Hub Header="My header"> <HubSection Header="My sub header"> <DataTemplate> <Grid /> </DataTemplate> </HubSection> <HubSection Header="My sub header 2"> <DataTemplate> <Grid /> </DataTemplate> </HubSection> </Hub>
在WP8.1中除了使用LLS展現分組的列表,還可使用SemanticZoom。SemanticZoom原是Win8中的控件,它不是列表控件但它倒是很是有用的呈現列表的控件。它有兩個狀態,ZoomedInView和ZoomedOutView。顧名思義,使用這兩個狀態就能夠作出LLS的效果,在ZoomedInView時使用ListView展現列表,在ZoomedOutView時使用GridView來展現分組。不光如此,SemanticZoom還能夠應用在地圖和地點集合的示例中,詳細信息。windows
<SemanticZoom> <SemanticZoom.ZoomedInView> <ListView/> </SemanticZoom.ZoomedInView> <SemanticZoom.ZoomedOutView> <GridView/> </SemanticZoom.ZoomedOutView> </SemanticZoom>
對於開發者來講可能僅僅是改變了名字,其實在底層作了不少工做。WebBrowser是一個真正的Browser浮在全部頁面之上,帶來了不少問題。但WebView是集成在XAML虛擬樹中的控件,甚至能夠輕鬆的將XAML和HTML混合在一塊兒使用,詳細信息。app
在WP8.1中咱們應該使用Windows8.1中的控件SwapChainPanel,詳細信息。async
在WP8.1中這個控件被申明爲不在被推薦使用。但在WP8.1中製做圖片應用時這個控件依然可使用。性能
這個控件僅僅是改了個名字,詳細信息。ui
<RichTextBlock> <Paragraph> Some text with bold <Bold>in it</Bold> </Paragraph> </RichTextBlock>
這是一個全新的控件,Windows8.1中也沒有。有不少第三方的控件也實現了自動補全的功能,此次推出一個官方的版本。推薦的內容再也不僅僅是文本,能夠是任何類型的控件,但出於性能問題的考慮仍是要保證推薦內容的儘量的輕量,詳細信息。
spa
<AutoSuggestBox TextChanged="AutoSuggestBox_TextChanged" SuggestionChosen="AutoSuggestBox_SuggestionChosen" ItemsSource="{Binding Suggestions}"> <AutoSuggestBox.ItemTemplate> <DataTemplate> <TextBlock Text="{Binding}"/> </DataTemplate> </AutoSuggestBox.ItemTemplate> </AutoSuggestBox>
private void AutoSuggestBox_TextChanged(AutoSuggestBox sender, AutoSuggestBoxTextChangedEventArgs args) { if (args.Reason == AutoSuggestionBoxTextChangeReason.UserInput) { Suggestions.Clear(); Suggestions.Add(sender.Text + "1"); Suggestions.Add(sender.Text + "2"); } } private void AutoSuggestBox_SuggestionChosen(AutoSuggestBox sender, AutoSuggestBoxSuggestionChosenEventArgs args) { // Add text to AutoSuggestBox }
這個控件是Windows和WP共享控件,經過這個控件能夠作一個攝像頭的查看器,能夠任意設置控件的大小,詳細信息。ssr
<CaptureElement x:Name="myCaptureElement"/> code
private MediaCapture mediaCaptureMgr = null; private async void ShowPreview() { if (mediaCaptureMgr == null) { mediaCaptureMgr = new MediaCapture(); await mediaCaptureMgr.InitializeAsync(); myCaptureElement.Source = mediaCaptureMgr; await mediaCaptureMgr.StartPreviewAsync(); } }
在以前介紹如何自定義控件的時候向你們推薦了一個進度環的控件,如今在WP8.1中咱們可使用Windows的原生進度環控件了,詳細信息。
WP8.1中還有不少新的控件好比,Frame,ListView,GridView,ToggleSwitch其實用法都很簡單就不一一介紹了。