Click here to load reader
Upload
jan-hentschel
View
241
Download
1
Embed Size (px)
Citation preview
Microsoft Student Partners© 2012 Microsoft Corporation. Alle Rechte vorbehalten.
Windows 8 Apps können sich auf besondere Weise ins Betriebssystem integrieren…
Jede Anwendung kann eine oder mehrere Kacheln haben, die die Anwendung startet und zusätzlich dynamische Informationen anzeigen kann.
So hat die Anwendung eine „Präsenz“ auf dem Startbildschirm, selbst wenn sie gar nicht läuft.
Außerdem können sich Anwendung in die Charms-Leiste integrieren.
Das schafft eine größere Einheitlichkeit zwischen den Apps und ermöglicht diesen, auf sinnvolle Weise zusammen zu arbeiten.
Stellvertretend für viele Andere Windows 8 Features, wollen wir uns heute die folgenden Funktionen anschauen:
Teilen (Sharing)
Suche
Live Tiles
Einstellungen (Settings)
Teilen (Sharing)
DEMO
Zusammenfassung
var transferManager = DataTransferManager.GetForCurrentView();transferManager.DataRequested += transferManager_DataRequested;
void transferManager_DataRequested(DataTransferManager sender, DataRequestedEventArgs args){
args.Request.Data.Properties.Description = "Beschreibung";args.Request.Data.Properties.Title = "Titel";args.Request.Data.SetText("Text");
}
C#
Suche
DEMO
Zusammenfassung
SearchPane.GetForCurrentView().QuerySubmitted += search_QuerySubmitted;
void search_QuerySubmitted(SearchPane sender, SearchPaneQuerySubmittedEventArgs args){
Search(args.QueryText)}
C#, Laufende Anwendung im ViewModel:
protected override void OnSearchActivated(SearchActivatedEventArgs args){
// Zur Suchseite navigieren}
C#, Geschlossene Anwendung in der App.xaml.cs:
Live-Tiles
DEMO
Zusammenfassung
var tileUpdater = TileUpdateManager.CreateTileUpdaterForApplication();tileUpdater.Clear();tileUpdater.EnableNotificationQueue(true);
var xml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideSmallImageAndText04);
var textElements = xml.GetElementsByTagName("text");textElements[0].AppendChild(xml.CreateTextNode("Zeile 1"));textElements[1].AppendChild(xml.CreateTextNode("Zeile 2"));
var imageElements = xml.GetElementsByTagName("image");imageElements[0].Attributes.GetNamedItem("src").NodeValue = "http://bild.uri";
var notification = new TileNotification(xml);
tileUpdater.Update(notification);
C#
Einstellungen (Settings)
DEMO
Zusammenfassung
SettingsPane.GetForCurrentView().CommandsRequested += settings_CommandsRequested;
void settings_CommandsRequested(SettingsPane sender, SettingsPaneCommandsRequestedEventArgsargs){
args.Request.ApplicationCommands.Add(new SettingsCommand("Bezeichner", "Beschriftung", new UICommandInvokedHandler((command) => {
// Settings-Flyout anzeigen})));
}
C#