Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wichtige APIs
Verfolgen Sie Dateien, auf die Ihr Benutzer häufig zugreift, indem Sie sie der Liste der zuletzt verwendeten Dateien Ihrer App (MRU) hinzufügen. Die Plattform verwaltet die MRU für Sie, indem Sie Elemente basierend auf dem Zeitpunkt des letzten Zugriffs sortieren und das älteste Element entfernen, wenn der Grenzwert für 25 Elemente der Liste erreicht ist. Alle Apps verfügen über eigene MRU.
Die MRU-Klasse Ihrer App wird durch die StorageItemMostRecentlyUsedList-Klasse dargestellt, die Sie aus der statischen StorageApplicationPermissions.MostRecentlyUsedList-Eigenschaft abrufen. MRU-Elemente werden als IStorageItem-Objekte gespeichert, sodass sowohl StorageFile-Objekte (die Dateien darstellen) als auch StorageFolder-Objekte (die Ordner darstellen) der MRU hinzugefügt werden können.
Hinweis
Vollständige Beispiele finden Sie im Beispiel für die Dateiauswahl und im Beispiel für den Dateizugriff.
Voraussetzungen
Grundlegendes zur asynchronen Programmierung für WinUI-Apps
Informationen zum Schreiben asynchroner Apps in C# finden Sie unter Aufrufen asynchroner APIs in C# oder Visual Basic. Informationen zum Schreiben asynchroner Apps in C++ finden Sie unter Asynchrone Programmierung in C++-.
Zugriffsberechtigungen für den Speicherort
Siehe Dateizugriffsberechtigungen.
Öffnen von Dateien und Ordnern mit einem Dateiauswahlwerkzeug
Ausgewählte Dateien sind häufig dieselben Dateien, zu denen Benutzer immer wieder zurückkehren.
Hinzufügen einer ausgewählten Datei zur MRU
Die Dateien, die Der Benutzer auswählt, sind häufig Dateien, zu denen sie wiederholt zurückkehren. Erwägen Sie also, ausgewählte Dateien zur MRU-Datei Ihrer App hinzuzufügen, sobald sie ausgewählt werden. Gehen Sie dazu wie folgt vor:
Windows.Storage.StorageFile file = await picker.PickSingleFileAsync(); var mru = Windows.Storage.AccessCache.StorageApplicationPermissions.MostRecentlyUsedList; string mruToken = mru.Add(file, "profile pic");StorageItemMostRecentlyUsedList.Add ist überladen. Im Beispiel verwenden wir Add(IStorageItem, String), sodass Metadaten der Datei zugeordnet werden können. Durch das Festlegen von Metadaten können Sie den Zweck des Elements aufzeichnen, z. B. "Profilbild". Sie können die Datei auch ohne Metadaten zum MRU hinzufügen, indem Sie Add(IStorageItem) aufrufen. Wenn Sie dem MRU ein Element hinzufügen, gibt die Methode eine eindeutig identifizierende Zeichenfolge zurück, die als Token bezeichnet wird, das zum Abrufen des Elements verwendet wird.
Tipp
Sie benötigen das Token, um ein Element aus der MRU abzurufen, daher sollten Sie es an einem Ort speichern. Weitere Informationen zu App-Daten finden Sie unter Verwalten von Anwendungsdaten.
Verwenden eines Tokens zum Abrufen eines Elements aus der MRU
Verwenden Sie die Abrufmethode, die für das abzurufende Element am besten geeignet ist.
- Rufen Sie eine Datei mithilfe von GetFileAsync als StorageFile ab.
- Rufen Sie einen Ordner mithilfe von GetFolderAsync als StorageFolder ab.
- Rufen Sie ein generisches IStorageItem-Objekt ab, das entweder eine Datei oder einen Ordner darstellen kann, mithilfe von GetItemAsync.
Hier erfahren Sie, wie Sie die soeben hinzugefügte Datei wiederherstellen.
StorageFile retrievedFile = await mru.GetFileAsync(mruToken);
Hier erfahren Sie, wie Sie alle Einträge durchgehen, um in dieser Reihenfolge zuerst Token und dann Elemente abzurufen.
foreach (Windows.Storage.AccessCache.AccessListEntry entry in mru.Entries)
{
string mruToken = entry.Token;
string mruMetadata = entry.Metadata;
Windows.Storage.IStorageItem item = await mru.GetItemAsync(mruToken);
// The type of item will tell you whether it's a file or a folder.
}
Mit AccessListEntryView können Sie Einträge in der MRU durchlaufen. Diese Einträge sind AccessListEntry-Strukturen , die das Token und metadaten für ein Element enthalten.
Entfernen von Elementen aus der MRU, wenn sie voll ist
Wenn das Limit von 25 Elementen des MRU erreicht ist und Sie versuchen, ein neues Element hinzuzufügen, wird das Element, auf das vor der längsten Zeit zugegriffen wurde, automatisch entfernt. Daher müssen Sie niemals ein Element entfernen, bevor Sie ein neues Element hinzufügen.
Liste für zukünftigen Zugriff
Neben einer MRU-Liste verfügt Ihre App auch über eine Liste für zukünftigen Zugriff. Durch die Auswahl von Dateien und Ordnern gewährt Der Benutzer Ihrer App die Berechtigung für den Zugriff auf Elemente, auf die andernfalls möglicherweise nicht zugegriffen werden kann. Wenn Sie diese Elemente zu Ihrer Liste für zukünftigen Zugriff hinzufügen, behalten Sie diese Berechtigung bei, wenn Ihre App später erneut auf diese Elemente zugreifen möchte. Die Liste für zukünftigen Zugriff Ihrer App wird durch die StorageItemAccessList-Klasse dargestellt, die Sie aus der statischen StorageApplicationPermissions.FutureAccessList-Eigenschaft abrufen.
Wenn ein Benutzer ein Element auswählt, sollten Sie es ihrer Liste für zukünftigen Zugriff sowie Ihrer MRU hinzufügen.
- Die FutureAccessList kann bis zu 1000 Elemente enthalten. Denken Sie daran: Sie kann Ordner sowie Dateien enthalten, sodass viele Ordner vorhanden sind.
- Die Plattform entfernt niemals Elemente aus der FutureAccessList für Sie. Wenn Sie das Limit von 1000 Elementen erreicht haben, können Sie erst dann eine weitere hinzufügen, wenn Sie Platz mit der Remove-Methode schaffen.
Windows developer