Share via


CachedFileUpdaterUI.FileUpdateRequested 事件

定义

当 Windows 请求文件更新时触发。 此事件针对每个请求的更新触发一次。

// Register
event_token FileUpdateRequested(TypedEventHandler<CachedFileUpdaterUI, FileUpdateRequestedEventArgs const&> const& handler) const;

// Revoke with event_token
void FileUpdateRequested(event_token const* cookie) const;

// Revoke with event_revoker
CachedFileUpdaterUI::FileUpdateRequested_revoker FileUpdateRequested(auto_revoke_t, TypedEventHandler<CachedFileUpdaterUI, FileUpdateRequestedEventArgs const&> const& handler) const;
public event TypedEventHandler<CachedFileUpdaterUI,FileUpdateRequestedEventArgs> FileUpdateRequested;
function onFileUpdateRequested(eventArgs) { /* Your code */ }
cachedFileUpdaterUI.addEventListener("fileupdaterequested", onFileUpdateRequested);
cachedFileUpdaterUI.removeEventListener("fileupdaterequested", onFileUpdateRequested);
- or -
cachedFileUpdaterUI.onfileupdaterequested = onFileUpdateRequested;
Public Custom Event FileUpdateRequested As TypedEventHandler(Of CachedFileUpdaterUI, FileUpdateRequestedEventArgs) 

事件类型

示例

文件选取器协定示例演示如何响应 FileUpdateRequested 事件。

// 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 包含 FileUpdateRequestedEventArgs 对象。

注解

如果应用参与缓存文件更新程序合约,则必须在应用的激活事件处理程序中注册此事件,检查 ActivationKind.CachedFileUpdater。 必须通过更新文件并设置请求的 FileUpdateRequest.Status 来响应此 FileUpdateRequested 事件。 使用 CachedFileUpdaterUIUpdateTarget 属性,用于确定应用应更新其存储库中的版本文件,还是更新文件的本地缓存副本以响应请求。

可以使用传递给 FileUpdateRequested 事件处理程序的对象上的 FileUpdateRequestedEventArgs.Request 属性访问有关请求的更新的信息。 

如果需要用户输入来完成更新,请将 FileUpdateRequest.Status 设置为 FileUpdateStatus.UserInputNeeded 并 完成请求。 如果用户交互可用,将触发另一个 FileUpdateRequested,你的应用可以获取用户输入并完成请求。

适用于