>

torsdag 22 september 2011

Hur Menyer fungerar i Windows 8

Denna bloggpost grundar sig på Windows 8 Developer Preview release och kan komma att ändras.

I Windows 8 finns en ny standard på menyerna om du gör en Metro-stilad applikation. Menyer är nåt som inte behövs synas hela tiden vilket Microsoft har tagit fasta på, alla menyer är dolda. Om användaren vill se menyern drar den in fingret uppifrån eller nerifrån in på skärmen (båda gesterna ger samma resultat). Användaren kan också använda höger-musklick alternativt win+Z. Samt att du kan även öppna menyerna via kod. Menyerna ligger som en panel upptill och/eller nertill.

Som exempel kan vi titta på Internet Explorer för Windows 8. Den har en meny nertill där användaren kan skriva skriva in adressen till sidan den vill besöka. Den övre menyn används till för att kunna hoppa mellan de olika sidorna som är öppnade. När användaren använder sidan döljs båda menyerna och allt den ser är enbart sidan.

menusnonemenus

Menyerna får du utforma precis hur du vill. För att skapa en meny lägger du bara till ApplicationBar elementet i din XAML kod och sätter egenskapen VerticalAligment till Top eller Bottom. Inuti Elementet kan du sedan lägga dina vanliga XAML element, som tex knappar. Du får dessutom bestämma hur hög menyn skall vara.

Denna bloggpost grundar sig på Windows 8 Developer Preview release och kan komma att ändras.

onsdag 21 september 2011

Filhantering i Windows 8

Denna bloggpost grundar sig på Windows 8 Developer Preview release och kan komma att ändras.

I Windows 8 kommer applikationerna att vara mera avgränsade, både mellan varandra och systemet. Detta innebär bl.a. att filhanteringen kommer var lite annorlunda än du är van vid.
Ersättaren till IsolageStorage
Till att börja med har applikationen ett eget mapp att använda ungefär på samma sätt som IsolageStorage fungerar. Windows.Storage.ApplicationData.Current.LocalFolder ger denna mapp. Via den kan du sedan skapa och öppna filer.
Jobba med biblioteken
Det andra alternativet du har om du vill öppna filer är genom det som vi idag lärt känna som Bibliotek/Library. Dessa mappar kan du nå via Windows.Storage.KnownFolders och är någon utav följande:

  • PicturesLibrary
  • MusicLibrary
  • DocumentsLibrary
  • VideoLibrary
Här finns även RemovableDevices vilket gör att du kan nå tex ett USB-minne. Dock kan du inte nå någon av ovanstående innan du deklarerat att du vill ha åtkomst till dem. Detta görs via manifestet och kommer då också att visas för användaren.
Library
Och som vanligt skall du inte begära mer behörighet än du behöver.
Låt användaren bestämma
Om du vill komma åt filer utöver dessa platser kan du fråga användaren efter filer och på det sättet få åtkomst till den. Detta gör du med hjälp av Windows.Storage.Pickers.FileOpenPicker, denna öppnar ett standardgränssnitt som låter användaren välja en fil eller flera filer. Dessa kan komma från den lokala datorn, någon dator i nätverket eller en annan applikation som stöder funktionen att dela med sig av filer.
När en fil blir öppna på detta sätt har din applikation bara åtkomst till filen just då, du kan alltså inte spara sökvägen och försöka öppna filen nästa gång du har applikationen igång. För att kunna göra detta kan man spara undan att användaren har gett applikationen tillstånd att använda filen. Detta görs i Windows.Storage.AccessCache.StorageApplicationPermissions.FutureAccessList. På detta objekt använder du funktionen AddOrReplace för att lägga till och spara en filaccess för, att sedan kolla i objektet efter om du redan har en behörighet sparad använder du funktionen ContainsItem och för att sedan återhämta filobjektet används GetFileAsync funktionen.

Denna bloggpost grundar sig på Windows 8 Developer Preview release och kan komma att ändras.

onsdag 14 september 2011

Windows 8, en första titt

Windows 8 kommer att innebära stora förändringar, både för dig som utvecklare och också användare. Förutom det mest uppenbara med gränssnitten finns många smarta finesser under ytan. Som användare signar du in med ditt livekonto och dina inställningar hänger med konto vilket gör att om du signar in på en annan Windows 8 maskin får du dina inställningar. Du kommer också kunna access alla dina datorer genom kopplingen med ditt livekonto. Sök funktionen har även i Windows 8 fått en central plats och det finns möjlighet att integrera det med applikationerna som du skriver. När du vill utföra ett sök har du en ruta att skriva i och sedan en lista på applikationer att välja mellan inklusive filer, inställningar och applikationer.


Sök är ett exempel på ett kontrakt. Kontrakt används för att kunna få program att samarbeta utan att behöva känna till varandra innan. Share (dela) är ett annat exempel på ett kontrakt om du vill använda det kontraktet kan du antingen stödja att dela till din applikation t.ex. om du skriver en facebook applikation så kan du tillåta att man kan skicka bilder från en annan applikaiton. Eller så kan du stödja att man kan dela från din applikation t.ex. från en fotoeditor eller liknande.

När du designar dina applikationer så kommer du ha några mallar att tillgå för att underlätta för dig att göra en windows 8 applikation eftersom du egentligen har en blank tom skärm att utgå från. Ingen start meny som skall ha en den av (vanligtvis) undre delen av skärmen, ingen övre del av applikationen som är reserverad för mininmera, maximera och stängknapp. Tänket bakom att designa en windows 8 applikation är fokus på innehållet och allt klutter skall bort, dock får det gärna göras vackert. Alla kommandon kan och skall gömmas på menyer som inte syns förrän man i touch mode gör en gest eller högerklick med muspekaren.

Det händer alltså mycket för oss utvecklare i Windows 8 och detta är bara en kort introduktion, jag har inte ens börjat skrapa på ytan.

tisdag 13 september 2011

Build the future

På plats i Anaheim följer jag nog vad som händer med framtidens utveckling och vad Windows 8 kommer att innebära för oss utvecklare. Även du kan följa keynote live