ResourceContext class

0 out of 2 rated this helpful - Rate this topic

Encapsulates all of the factors (ResourceQualifiers) that might affect resource selection.

Syntax


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

Attributes

ActivatableAttribute(NTDDI_WIN8)
MarshalingBehaviorAttribute(Agile)
StaticAttribute(Windows.ApplicationModel.Resources.Core.IResourceContextStatics, NTDDI_WIN8)
ThreadingAttribute(Both)
VersionAttribute(NTDDI_WIN8)

Members

The ResourceContext class has these types of members:

Constructors

The ResourceContext class has these constructors.

ConstructorDescription
ResourceContext Creates a default ResourceContext object.

 

Methods

The ResourceContext class has these methods. With C#, Visual Basic, and C++, it also inherits methods from the Object class.

MethodDescription
Clone Creates a clone of this ResourceContext, with identical qualifiers.
CreateMatchingContext Creates a new ResourceContext that matches a supplied set of qualifiers.
OverrideToMatch Overrides the qualifier values supplied by this context to match a specified list of resolved ResourceQualifiers. Typically the resolved ResourceQualifiers are associated with a resource that was looked up earlier.
Reset() Resets the overridden values for all qualifiers.
Reset(IIterable(String)) Resets the overridden values for the specified qualifiers.

 

Properties

The ResourceContext class has these properties.

PropertyAccess typeDescription

Languages

Read/writeGets or sets the language qualifier for this context.

QualifierValues

Read-onlyGets a writable, observable map of all supported qualifiers, indexed by name.

 

Examples

This example is based on scenario 13 of the Application resources and localization sample. See the sample for the more complete solution.


// 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";
    });
}

Requirements

Minimum supported client

Windows 8 [Windows Store apps only]

Minimum supported server

Windows Server 2012 [Windows Store apps only]

Namespace

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

Metadata

Windows.winmd

See also

ResourceQualifier
Application resources and localization sample

 

 

Build date: 12/4/2012

Did you find this helpful?
(1500 characters remaining)
© 2013 Microsoft. All rights reserved.