TargetFileRequestedEventArgs Klasse

Definition

Stellt Informationen zu einem TargetFileRequested-Ereignis bereit .

public ref class TargetFileRequestedEventArgs sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
class TargetFileRequestedEventArgs final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public sealed class TargetFileRequestedEventArgs
Public NotInheritable Class TargetFileRequestedEventArgs
Vererbung
Object Platform::Object IInspectable TargetFileRequestedEventArgs
Attribute

Windows-Anforderungen

Gerätefamilie
Windows 10 (eingeführt in 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
API contract
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)

Beispiele

Im Beispiel für die Dateiauswahl wird veranschaulicht, wie auf ein TargetFileRequested-Ereignis reagiert wird .

// Event handler
private async void OnTargetFileRequested(FileSavePickerUI sender, TargetFileRequestedEventArgs e)
{
    // Respond to TargetFileRequested event on the background thread on which it was raised

    // Requesting a deferral allows the app to call another asynchronous method and complete the request at a later time
    var deferral = e.Request.GetDeferral();

    // Create file and assign to TargetFile property
    e.Request.TargetFile = await ApplicationData.Current.LocalFolder.CreateFileAsync(sender.FileName, CreationCollisionOption.GenerateUniqueName);

    // Complete the deferral to let the Picker know the request is finished
    deferral.Complete();
}

// Register for the event
fileSavePickerUI.TargetFileRequested += new TypedEventHandler<FileSavePickerUI, TargetFileRequestedEventArgs>(OnTargetFileRequested);

Enthält im Beispiel e ein TargetFileRequestedEventArgs-Objekt.

Hinweise

Dieses Objekt wird an den Ereignishandler für TargetFileRequested-Ereignisse übergeben.

Reagieren auf ein TargetFileRequested-Ereignis

Wenn Ihre App am Vertrag Dateispeicherauswahl teilnimmt und ein TargetFileRequested-Ereignis ausgelöst wird , sollte Ihre App mit den folgenden Schritten reagieren:

  1. Rufen Sie mithilfe der TargetFileRequestedEventArgs.request-Eigenschaft eine TargetFileRequested-Eigenschaft ab.
  2. Erstellen (oder Abrufen) einer StorageFile-Datei , die die zu speichernde Datei darstellt; Diese StorageFile-Datei wird an die App zurückgegeben, die die Dateiauswahl zum Speichern aufgerufen hat, und wird von der aufrufenden App zum Schreiben von Inhalten in die Datei verwendet.

Der Dateiname und die Erweiterung des Objekts, das die Datei darstellt, müssen mit dem vom Benutzer angegebenen Dateinamen und der Erweiterung übereinstimmen (und über FileName zugänglich sein), andernfalls schlägt der Versuch, die Datei zu speichern, fehl. Wenn der Versuch fehlschlägt, kann der Benutzer versuchen, die Datei erneut zu speichern.

Wenn Ihre App (als Anbieter des Speicherorts) kein Objekt für die zu speichernde Datei bereitstellen kann, legen Sie TargetFileRequest.TargetFile auf NULL fest.

  1. Legen Sie TargetFileRequest.TargetFile auf das StorageFile-Objekt fest.

Asynchrones Reagieren

Wenn Ihre App, die den Speicherort bereitstellt, nicht auf das TargetFileRequested-Ereignis reagieren kann, bevor sie vom Ereignishandler zurückgegeben wird (z. B. wenn Ihre App eine asynchrone Methode aufruft), können Sie die Antwort asynchron abschließen, indem Sie zurückstellen.

Ihre App als Anbieter des Speicherorts kann zurückstellen, um asynchron auf das Ereignis zu reagieren, indem Sie die folgenden Schritte ausführen:

  1. Rufen Sie mithilfe der TargetFileRequestedEventArgs.request-Eigenschaft eine TargetFileRequested-Eigenschaft ab.
  2. Rufen Sie TargetFileRequest.GetDeferral auf, um ein TargetFileRequestDeferral-Objekt abzurufen.
  3. Führen Sie die erforderlichen Schritte aus, um auf das TargetFileRequested-Ereignis zu reagieren (im vorherigen Abschnitt beschrieben).
  4. Rufen Sie TargetFileRequestDeferral.Complete auf, um zu signalisieren, dass Ihre App nicht mehr auf das TargetFileRequested-Ereignis reagiert hat.

Eigenschaften

Request

Ruft ein TargetFileRequest-Objekt ab, das verwendet wird, um auf ein TargetFileRequested-Ereignis zu reagieren.

Gilt für:

Weitere Informationen