DisplayState.TryFunctionalize(DisplayStateFunctionalizeOptions) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
尝试在所有指定的 DisplayPath 属性作为约束的情况下,通过尝试评估所有路径上的最佳模式来“功能化”此 DisplayState。 然后,此方法(可选) (,请参阅 备注) 使用功能化结果更新所有 DisplayPath 和 DisplayView 属性。 具体而言,所有设置为 null 的 DisplayPath 和 DisplayView 属性都将计算并设置其值。
public:
virtual DisplayStateOperationResult ^ TryFunctionalize(DisplayStateFunctionalizeOptions options) = TryFunctionalize;
DisplayStateOperationResult TryFunctionalize(DisplayStateFunctionalizeOptions const& options);
public DisplayStateOperationResult TryFunctionalize(DisplayStateFunctionalizeOptions options);
function tryFunctionalize(options)
Public Function TryFunctionalize (options As DisplayStateFunctionalizeOptions) As DisplayStateOperationResult
参数
- options
- DisplayStateFunctionalizeOptions
返回
一个 DisplayStateOperationResult 值,用于详细说明操作的成功或失败。
注解
使用 ValidateTopologyOnly 选项可阻止使用功能化结果更新所有 DisplayPath 属性。
请注意,在将状态应用到系统之前,调用 TryApply 也会隐式地将其功能化,但 TryApply 永远不会使用功能化的结果更新此状态的 DisplayPath 属性。
将 DisplayState 功能化可能是一项相当昂贵的操作,因为它涉及查询显示驱动程序和比较许多可能的模式。 如果在调用此方法 (或调用 TryApply) 之前设置更多 DisplayPath 属性,则操作通常会更便宜,因为它减少了在给定路径上评估“最佳”模式所需的工作量。
使用 TryFunctionalize 确定当前状态是否可以在调用 TryApply 之前功能化是一种很好的做法,因为 TryApply 始终比 TryFunctionalize 更昂贵。 TryFunctionalize 成功后,对 TryApply 的后续调用将更便宜,因为它不再需要执行功能化模式的工作。