此主题尚未评级 - 评价此主题

ResourceCandidate Class

表示给定 NamedResource 的单个可能值、与该资源关联的限定符以及这些限定符与解析的上下文的匹配程度。

语法


public sealed class ResourceCandidate : Object

特性

MarshalingBehaviorAttribute(Agile)
VersionAttribute(NTDDI_WIN8)

成员

ResourceCandidate类 具有以下类型的成员:

方法

The ResourceCandidate 类 具有以下方法。 使用 C#、Visual Basic 和 C++,它还可以继承以下内容中的方法 Object 类.

方法描述
GetQualifierValue Returns the value of a qualifier, given its name.
GetValueAsFileAsync Asynchronously returns a StorageFile that accesses the value of this ResourceCandidate. This only works on certain types of ResourceCandidates that are files.

 

属性

ResourceCandidate类 具有以下属性。

属性访问类型描述

IsDefault

只读Indicates whether this ResourceCandidate can be used as a default fallback value for any context.

IsMatch

只读Indicates whether this ResourceCandidate matched the ResourceContext against which it was evaluated.

IsMatchAsDefault

只读Indicates whether this ResourceCandidate matched the ResourceContext against which it was evaluated as a result of being a default fallback value or mixed match with default fallback, and not as a true match.

Qualifiers

只读Gets the qualifiers associated with this ResourceCandidate.

ValueAsString

只读Gets the value of this ResourceCandidate, expressed as a string.

 

示例

此示例基于 应用程序资源和本地化示例 的方案 13。查看更多完整解决方案的示例。


// Create a ResourceContext.
var resourceContext = new Windows.ApplicationModel.Resources.Core.ResourceContext();

// Set the specific context for lookup of resources.
var qualifierValues = resourceContext.qualifierValues;
qualifierValues["language"] = "en-US";
qualifierValues["contrast"] = "standard";
qualifierValues["scale"] = "140";
qualifierValues["homeregion"] = "021"; // Northern America

// Resources actually reside within Scenario13 Resource Map.
var resourceIds = [
    '/Scenario13/languageOnly',
    '/Scenario13/scaleOnly',
    '/Scenario13/contrastOnly',
    '/Scenario13/homeregionOnly',
    '/Scenario13/multiDimensional',
];

var output = { str: "" };
resourceIds.forEach(function (resourceId) {
    renderNamedResource(resourceId, resourceContext, output);
});

function renderNamedResource(resourceId, resourceContext, output) {
    output.str += "Resource ID " + resourceId + ":\n";
    // Lookup the resource in the mainResourceMap (the one for this package).
    var namedResource = Windows.ApplicationModel.Resources.Core.ResourceManager.current.mainResourceMap.lookup(resourceId);

    // Return a ResourceCandidateVectorView of all possible resources candidates
    // resolved against the context in order of appropriateness.
    var resourceCandidates = namedResource.resolveAll(resourceContext);

    resourceCandidates.forEach(function (candidate, index) {
        renderCandidate(candidate, index, output);
    });
    output.str += "\n";
}

function renderCandidate(candidate, index, output) {
    // Get all the various qualifiers for the candidate (such as language, scale, contrast).
    candidate.qualifiers.forEach(function (qualifier) {
        output.str += "qualifierName: " + qualifier.qualifierName + "\n";
        output.str += "qualifierValue: " + qualifier.qualifierValue + "\n";
        output.str += "isDefault: ";
        output.str += (qualifier.isDefault) ? "true\n" : "false\n";
        output.str += "isMatch: ";
        output.str += (qualifier.isMatch) ? "true\n" : "false\n";
        output.str += "score: " + qualifier.score + "\n";
        output.str += "\n";
    });
}

要求

最低受支持的客户端

Windows 8 [仅 Windows 应用商店应用]

最低受支持的服务器

Windows Server 2012 [仅 Windows 应用商店应用]

命名空间

Windows.ApplicationModel.Resources.Core
Windows::ApplicationModel::Resources::Core [C++]

元数据

Windows.winmd

另请参阅

应用程序资源和本地化示例

 

 

© 2013 Microsoft. 版权所有。