ResourceCandidate Class

特定の NamedResource に有効な単一の値、そのリソースに関連付けられた修飾子、および解決されたコンテキストにそれらの修飾子がどの程度一致するかを表します。

構文


Public NotInheritable Class ResourceCandidate

属性

[MarshalingBehavior(Agile)]
[Version(0x06020000)]

メンバー

ResourceCandidateクラス には次の種類のメンバーがあります。

メソッド

The ResourceCandidate クラス には次のメソッドがあります。 With 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 (that is, a match in relation to some qualifiers but using default fallback values for other qualifiers), 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

参照

アプリケーションのリソースとローカリゼーションのサンプル

 

 

表示:
© 2015 Microsoft