Nelle applicazioni Windows 8 è possibile tener traccia degli elementi utilizzati di recente mediante la classe MostRecentlyUsedList (Windows.Storage.AccessCache), il sistema gestirà in modo automatico l'ordinamento degli elementi in base all'ultima data di accesso ed eliminerà, superato il limite di 25 items, quelli meno recenti. La classe MostRecentlyUsedList
consente di aggiungere nuovi elementi che implementano IStorageItem tramite la procedura Add, la quale ha due overload, uno che accetta solo un oggetto IStorageItem e l'altro che accetta anche uno string, quest'ultimo può essere utilizzato per memorizzare lo scopo di utilizzo del file .
Aggiunta di un elemento ai contenuti recenti
Dopo aver ottenuto il riferimento al file è possibile aggiungerlo alla lista dei contenuti recenti nel seguente modo:
//Seleziono una immagine dalla picture library
FileOpenPicker flop = new
FileOpenPicker();
flop.ViewMode = PickerViewMode.Thumbnail;
flop.FileTypeFilter.Add(".jpg");
var selectedFile = await flop.PickSingleFileAsync();
// Aggiungo il file alla lista degli ultimi file utilizzati recuperandone il corrispettivo token
var token = Windows.Storage.AccessCache.StorageApplicationPermissions.MostRecentlyUsedList.Add(selectedFile,"Purpose");
Come è possibile notare, il metodo Add restituisce un token che potrà essere impiegato in un secondo momento per recuperare l'istanza del tipo IStorageItem che si vorrà ottenere.
// Dal token recupero il file specificato
var usedFile = Windows.Storage.AccessCache.StorageApplicationPermissions.MostRecentlyUsedList.GetFileAsync(token);
Vi sono 3 metodi per il recupero degli elementi che accettano come parametro il token del file :
- GetFileAsync, consente di recuperare uno specifico file
- GetFolderAsync, mediante il quale è possibile ottenere il recupero di una specifica cartella
- GetItemAsync, permette il recupero di un elemento IStorageItem generico
E' possibile recuperare tutti gli elementi utilizzati di recente tramite la proprietà Entries la quale restituisce un oggetto AccessListEntryView, una collezione di elementi AccessListEntry contenente il token del file e l'eventuale descrizione dello scopo.
// Recupero di tutti i token dal contenitore
foreach (AccessListEntry entry in
Windows.Storage.AccessCache.StorageApplicationPermissions.MostRecentlyUsedList.Entries) {
String recentToken = entry.Token;
}
Per approfondire l'argomento è possibile consultare la relativa documentazione tecnica al seguente indirizzo
http://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh972344.aspx