语言

EditContext.ValidateAsync(CancellationToken) 方法

定义

以异步方式验证此 EditContext 情况。 取消任何挂起的字段级异步验证任务,调用同步 OnValidationRequested 处理程序,然后同时调用和等待异步 OnValidationRequestedAsync 处理程序。 同步处理程序的异常将传播到调用方,匹配 Validate()。 包含异步处理程序引发的任何非取消异常:表单被标记为错误(可通过无 IsValidationFaulted()参数观察到),该方法返回 false。 当异步部分处于运行状态时,无 IsValidationPending() 参数返回 true ,以便应用程序可以显示全局“验证...”不包装调用本身的指示器。 仅当传递完成时,窗体级 IsValidationFaulted() 结果才会更新;在调用方取消的传递之间保留此结果。

public System.Threading.Tasks.Task<bool> ValidateAsync(System.Threading.CancellationToken cancellationToken = default);
member this.ValidateAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Function ValidateAsync (Optional cancellationToken As CancellationToken = Nothing) As Task(Of Boolean)

参数

cancellationToken
CancellationToken

指示取消此验证通过的令牌。 令牌通过 CancellationToken.. 向异步处理程序公开。 如果调用方取消令牌,此方法将 OperationCanceledException引发;在这种情况下,窗体未标记为出错,并且保留以前的窗体级别错误状态。 令牌仅绑定外部传递;在等待的窗口(例如,用户编辑)期间独立启动的字段级验证任务不会链接到此令牌并继续运行。

返回

如此 如果验证后没有验证消息,并且没有异步处理程序出错;否则为 false。

例外

在验证通过之前或期间取消时 cancellationToken 引发。

注解

不得重新输入验证。 请勿从附加到同EditContext一位置的 OnValidationRequestedOnValidationRequestedAsync或处理程序内部调用或ValidateAsync(CancellationToken)OnValidationStateChanged从中调用Validate();否则会产生未定义的行为。

适用于