Windows 8 Settings Charme

by Hannes Preishuber15. September 2012 12:44

Ich habe bereits vor einiger Zeit einen kritischen Blog Beitrag verfasst, wie man nach den Windows 8 Store APP Richtlinien Einstellungen in Anwendungen realisiert. Tim Heuer hat vor einiger Zeit ein kleines Projekt gestartet (Callisto), das es leichter machen soll u.a. auch einen Setting samt Flyout zu realisieren. Die Grundidee gleicht dem Silverlight Toolkit. Der Sourcecode ist auf Github zu haben.

Da ich eigentlich weniger Arbeit haben will und nicht mehr, nehme ich das Paket von Nuget. Das ist zwar nicht ganz aktuell, aber ich habe nicht vor Bugfixes an Open Source vorzunehmen.

image

Um der WinRT App mitzuteilen, das der Benutzer das Setting Charme geöffnet hat, muss ein Event abonniert werden. Ein guter Ort dafür ist die App.xaml.vb  (Für C# Developer weniger gut Winking smile) und dort am Ende des OnLaunched Events.

AddHandler SettingsPane.GetForCurrentView().CommandsRequested, AddressOf OnSettingsRequest

Im SettingsRequest wird dann ein Menüpunkt eingefügt.

Protected Sub OnSettingsRequest(sender As SettingsPane, args As SettingsPaneCommandsRequestedEventArgs)
Dim h As New SettingsCommand("SpListe", "Config", 
New UICommandInvokedHandler(AddressOf SettingsFunktion)) args.Request.ApplicationCommands.Add(h) End Sub

Erst wenn der Benutzer diesen auswählt wird dann das Settingspane geöffnet und der neue Punkt Config eingefügt.

image

 

Erst ab hier kommt die Callisto Bibliothek zum Einsatz.

Private Sub SettingsFunktion()
Dim s = New SettingsFlyout()
s.Content = New settings1
s.HeaderBrush = New SolidColorBrush(Colors.DarkBlue)
s.Background = New SolidColorBrush(Colors.White)
s.HeaderText = "Config …."
s.IsOpen = TrueEnd Sub

Der Eigentliche Dialog ist ein XAML Usercontrol mit dem Namen settings1.xaml.

image

Wenn ihnen der Artikel gefallen hat oder er für sie hilfreich war, bitten "kicken" sie ihn.
kick it on dotnet-kicks.de

Tags:

VB | WinRT | Windows

Kommentar schreiben

  Country flag

biuquote
  • Kommentar
  • Live Vorschau
Loading

About the author

Something about the author

Month List

Page List