Skip to content

Latest commit

 

History

History
53 lines (42 loc) · 2.8 KB

cachedfileupdaterui_fileupdaterequested.md

File metadata and controls

53 lines (42 loc) · 2.8 KB
-api-id -api-type -api-device-family-note
E:Windows.Storage.Provider.CachedFileUpdaterUI.FileUpdateRequested
winrt event
xbox

Windows.Storage.Provider.CachedFileUpdaterUI.FileUpdateRequested

-description

Fires when the Windows requests a file update. This event fires once for each requested update.

-remarks

If your app participates in the Cached File Updater contract, you must register for this event in your app's activated event handler where you check for ActivationKind.CachedFileUpdater. You must respond to this FileUpdateRequested event by updating the file and setting the FileUpdateRequest.Status of the request. Use the CachedFileUpdaterUI.UpdateTarget property to determine whether your app should update the version file in its repository or the locally cached copy of the file in response to the request.

You can access information about the requested update by using the FileUpdateRequestedEventArgs.Request property on the object that is passed to your FileUpdateRequested event handler. 

If you need user input to complete the update, set the FileUpdateRequest.Status to FileUpdateStatus.UserInputNeeded and complete the request. If user interaction is available, another FileUpdateRequested will fire and your app can obtain user input and complete the request.

-examples

The File picker contracts sample demonstrates how to respond to a FileUpdateRequested event.

// Event handler
void CachedFileUpdaterUI_FileUpdateRequested(CachedFileUpdaterUI sender, FileUpdateRequestedEventArgs args)
{
    fileUpdateRequest = args.Request;
    fileUpdateRequestDeferral = fileUpdateRequest.GetDeferral();
    switch (cachedFileUpdaterUI.UIStatus)
    {
        case UIStatus.Hidden:
            fileUpdateRequest.Status = FileUpdateStatus.UserInputNeeded;
            fileUpdateRequestDeferral.Complete();
            break;
        case UIStatus.Visible:
            break;
        case UIStatus.Unavailable:
            fileUpdateRequest.Status = FileUpdateStatus.Failed;
            fileUpdateRequestDeferral.Complete();
            break;
    }
}

// Register for the event
cachedFileUpdaterUI.FileUpdateRequested += CachedFileUpdaterUI_FileUpdateRequested;

args contains a FileUpdateRequestedEventArgs object.

-see-also