In WinRT a significant portion of all native methods are asynchronous. Using an asynchronous method is very easy an can help you to speed up you application. The requirement to use an async method is that the calling method has an async modifier. It’s easy to use async methods from a native API, but it can be useful as well to run synchronous operations off the UI thread. This should be done to prevent the UI thread from beeing blocked by time-consuming or resource-intensive operations like calculating ϖ or the answer to the ultimate question for the life, the universe and everything. To show you how to run things like this asynchronously we take the following synchronous method: private void synchonousMethod() { do { i++; } while (i < Int32.MaxValue / 2); } This method obviously lacks the async and await keywords and it’s usual implementation would be something like…
Tag: Windows 8
SettingsContractWrapper – the easy way to integrate w/ settings
In the previous post I introduced the Flyout control. Now the most common use case for the Flyout controls is in the inegration with the settings contract. Integrating with the settings contract is usually a two-step procedure. First you have to add a SettingsCommand to the charm and then attach a Flyout or similar to it. Now that you have a Flyout you could do that on your own, but with the SettingsContractWrapper it is even more fun. To use it you need to define one or more instances of SettingsEntry. This class holds the information required to set up the Flyout Its constructor takes three arguments: Title, FlyoutDimension, Content. The SettingsContractWrapper takes five arguments: Foreground, Background, Theme, Icon, SettingsEntries. The required namespaces are ‘TCD.Controls’ and ‘TCD.Controls.Settings’. As soon as you called the SettingsContractWrapper constructor you can forget about the settings contract integration. Just make sure that the UserControls you hand…
WikiSearch – a quick and dirty Windows 8 Metro App
I’ve been playing around with Windows 8 Metro development the last months and one day I did a quick Wikipedia App that integrates into the Search. The first version took me – no joke – less than 20 minutes, cause it’s just so easy! All you have to do to integrate into the search is to add this method to your App.xaml.cs: protected override void OnSearchActivated(SearchActivatedEventArgs args) { base.OnSearchActivated(args); if (mainPage == null) mainPage = new MainPage(); Window.Current.Content = mainPage; mainPage.OpenWiki(args.QueryText); Window.Current.Activate(); } After that go into Package.appxmanifest, switch to the Declarations tab and add a ‘Search’ declaration. mainPage.OpenWiki() would be a method that composes a Wikipedia-Search-URL from the queryText and tells a WebView to navigate to it. (webView.Source = new Uri(“http://en.wikipedia.org/w/index.php?title=Special%3ASearch&search=” + “queryString”);) I won’t go into any more detail at this point, but that is all the magic you have to do. Today I added multiple-language support to…