• Handige link voor AppBar button in Windows 8.1

    In Windows 8.1 hebben we als Xaml developers eeen hele boel nieuwe controls gekregen. Een van deze nieuwe control is de AppBarButton. Met deze button hoeven we niet langer een custom styling over een nieuwe button heen te trekken maar komt dat met het control vanzelf mee. Ook het aanpassen van look & feel is veel makelijker geworden. Het gebruik van deze Nieuwe control is heel eenvoudig, een voorbeeld: Label is het tekstje dat onder de button verschijnt en Command wat uitgevoerd word als …

  • CoreDispatcher en Tasks in Windows 8

    In een eerdere blogposts heb ik al laten zien wat het verscchil is tussen tasks en threads, en eventuele niet voor de handliggende gevolgen bij verkeerd gebruik: http://www.familie-smits.com/post/2012/11/07/Threads-versus-Tasks.aspx Onlangs was ik met de Dispatcher bezig om weer onderdelen terug de UI thread te invoken en liep ik tegen precies het zelfde aan. Neem het volgende stuk code: Debug.WriteLine("step 1"); await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, async () =& …

  • ShowAsync voor Flyout uit Callisto

    In Tim's Heuer Calisto zit een Flyout control die erg bruikbaar is  voor het bouwen van Windows 8 apps. Het is een soort vervanger van een MessageDialog die minder irritant voor eind gebruikers is. Echter is het gebruik in code nogal anders. neem het MessageDialog, dat zou er zo uitzien: public async void ShowMesasgeDialog() { MessageDialog messageDialog = new MessageDialog("A dialog"); await messageDialog.ShowAsync(); } Duidelijk …

  • Windows 8 apps reviewen, zoeken in de store, email versturen.. help?

    Op het Windows Phone platform kun je als ontwikkelaar gebruiken maken van bepaalde launcher om standaard functionaliteit zoals het laten reviewen van de app, het sturen van emails of een zoekopdracht in de Windows Phone Store. Voor Windows 8 zijn hier geen objecten voor maar kan doormiddel van protocol activatie wel hetzelfde worden bereikt. Dan kan er zo uitzien: string SearchQuery = "Webradio" Windows.System.Launcher.LaunchUriAsync(new Uri(string.Format("ms-windows-store:Search?query={0 …

  • Voorkom exceptions van MessageDialogs

    Wanneer je MessageDialogs gebruikt voor het tonen van meldingen aan de gebruiker moet je op letten dat je niet probeer een dialog te openen terwijl er nog een andere MessageDialog open staat. Doe je dat wel wordt er een exception gegooid. Wanneer de message dialog niet perse hoeft te worden getoont kan je natuurlijk met een simpele try catch de exception oplossen. Echter laat je niet voor niks de Melding zien. Hiervoor moeten dus extra maatregelen worden getroffen. Met een simpele extension …

  • Live branding

    Wanneer je een live tile toevoegd kies je een template voor de live tile. Hierbij kan je zelf kiezen voor 45 verschillende templates. Vervolgens is op de live tile vaak een plaatje en tekst zichtbaar en ook het Small logo dat je met je applicatie meeleverd zoals hier in webradio   Via the TileUpdateManager kan je eenvoudig een de XML voor een dergelijke live tile verkrijgen en dan voorzien van je eigen data. Zo stukje XML kan er zo uitzien: <tile><visual> …

  • Framebased settings flyout

    Wanneer een Windows store app settings toont gebeurd dit via de SettingsCharm en opent dan een SettingsFlyout. Meestal zijn dit eenvoudige views zonder dat er doorgeklikt kan worden naar een andere pagina in deze flyout. Zo flyout kan er als volgt uitzien:   Voor dergelijke flyouts zijn er heel veel controls te vinden. Zo gebruik ik vaak Callisto waar ook een dergelijk control inzit. Echter in sommige situaties is deze control te beperkt. Wanneer we bijvoorbeeld kijken naar de …

  • Toast notificatie met launch parameters

    Met toast notificaties kan je de aandacht van de gebruiker krijgt terwijl je app niet draait. Wat er zo uit kan zien:   Het laten zien van zo toast notificatie is er eenvoudig en kan met een paar regels code: var template = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastImageAndText01); var xml = template.GetXml(); ToastNotificationManager.CreateToastNotifier().Show(new ToastNotification(xml));   Via de GetTemplate word de XML van een template opgevraagd en …

  • IRandomAccessStreams & Streams

    Bij het ontwikkelen van Windows Store Apps met C# en Xaml heb je rekening te houden met twee werelden, enerzijds .Net, anderzijds WinRT. Dit zie je op hele veel terreinen terug. Async operaties binnen .Net geven vaak een Task terug, WinRT apis geven een IAsyncOperation terug, binnen .net heb je Stream en in WinRT zijn het IInputStream of IOutputStream. Deze verschillen worden vaak via extension methods   Via extension methods worden deze verschillen overbrugt. Hier als voorbeeld van …

  • TAP versus EAP

    In Windows Phone 7 waren alle async methods via het event asynchronous pattern wat wil zeggen een method waarmee je de actie start en een event wanneer de operatie compleet is. Je ziet dit bijvoorbeeld op de webclient waar je een dergelijke schrijf wijze zou kunnen gebruiken: public void GetUrl() { WebClient client = new WebClient(); client.DownloadStringCompleted += (s, e) => { } ; client.DownloadStringAsync(new …