Language: HTML | XAML

Schnellstart: Verwenden von Zeichenfolgenressourcen (Windows-Runtime-Apps mit JavaScript und HTML)

Applies to Windows and Windows Phone

Platzieren Sie Zeichenfolgenressourcen in separaten Ressourcendateien , und verweisen Sie von Ihrem Code oder Markup aus auf diese Zeichenfolgen.

Anweisungen

  1. Platzieren Sie Zeichenfolgen in einer Ressourcendatei, anstatt sie direkt im Code oder Markup zu platzieren.
    1. Öffnen Sie in Visual Studio "package.appxmanifest", rufen Sie die Registerkarte Anwendungsbenutzeroberfläche auf, und legen Sie die Standardsprache auf "en-US" fest.

      Hinweis  Damit haben Sie die Standardsprache für das Projekt festgelegt. Die Standardsprachressourcen werden verwendet, wenn die bevorzugte Sprache des Benutzers oder die Anzeigesprachen nicht mit den von der Anwendung bereitgestellten Sprachressourcen übereinstimmen. Siehe Eigenschaftenseiten, JavaScript.

    2. Erstellen Sie einen Ordner für die Ressourcendateien.
      1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und wählen Sie Hinzufügen > Neuer Ordner aus.
      2. Geben Sie dem Ordner den Namen "strings".
      3. Wenn der neue Ordner nicht im Projektmappen-Explorer sichtbar ist, wählen sie im Microsoft Visual Studio-Menü Projekt > Alle Dateien anzeigen, während das Projekt noch ausgewählt ist.
    3. Erstellen Sie einen Unterordner und eine Ressourcendatei für Englisch (USA).
      1. Klicken Sie mit der rechten Maustaste auf den Ordner "strings", und fügen Sie einen neuen Ordner unterhalb von "strings" hinzu. Geben Sie ihm den Namen "en-US". Die Ressourcendatei wird in einem Ordner platziert, der nach dem BCP-47-Sprachtag benannt wurde. Ausführliche Informationen zum Sprachqualifizierer und eine Liste gängiger Sprachtags finden Sie unter So wird's gemacht: Benennen von Ressourcen mit Qualifizierern.
      2. Klicken Sie mit der rechten Maustaste auf den Ordner "en-US", und wählen Sie Hinzufügen > Neues Element… aus.
      3. Wählen Sie Ressourcendatei (.resjson) aus.
      4. Klicken Sie auf Hinzufügen. Hierdurch wird eine Ressourcendatei mit dem Standardnamen Resources.resjson hinzugefügt. Es wird empfohlen, diesen Standarddateinamen zu verwenden. Apps können ihre Ressourcen zwar auf andere Dateien aufteilen, aber Sie müssen in diesem Fall sorgfältig darauf achten, dass korrekt auf sie verwiesen wird (siehe So wird's gemacht: Laden von Zeichenfolgenressourcen).
      5. Die neue Datei enthält Standardinhalt. Ersetzen Sie diesen durch folgenden Inhalt (der dem Standardinhalt möglicherweise sehr ähnlich ist):

        strings/en-US/resources.resjson

        
        {
            "greeting"              : "Hello",
            "_greeting.comment"     : "A welcome greeting.",
        
            "farewell"              : "Goodbye",
            "_farewell.comment"     : "A goodbye."
        }
        
        

        Hierbei handelt es sich um strikte JSON-Syntax (JavaScript Object Notation), bei der nach jedem Name/Wert-Paar mit Ausnahme des letzten ein Komma stehen muss. In diesem Beispiel bezeichnen "greeting" und "farewell" die anzuzeigenden Zeichenfolgen. Die anderen Paare ("_greeting.comment" und "_farewell.comment") sind Kommentare zur Beschreibung der Zeichenfolgen. Kommentare eignen sich gut, um ggf. zusätzliche Anweisungen für Übersetzer bereitzustellen, die die Zeichenfolgen in andere Sprachen lokalisieren.

  2. Hinzufügen von Zeichenfolgenressourcen-Bezeichnern im Code und im Markup
    1. Fügen Sie der HTML-Datei, sofern noch nicht vorhanden, Verweise auf die Windows-Bibliothek für JavaScript hinzu.
      
      <!-- WinJS references -->
      <link href="//Microsoft.WinJS.0.6/css/ui-dark.css" rel="stylesheet">
      <script src="//Microsoft.WinJS.0.6/js/base.js"></script>
      
      
      

      In diesem Beispiel wird der HTML-Code für die Datei "default.html" gezeigt, die generiert wird, wenn Sie in Visual Studio ein neues Projekt vom Typ Leere Anwendung erstellen. Beachten Sie, dass hierin bereits Verweise auf WinJS enthalten sind.

    2. Rufen Sie in dem zur HTML-Datei gehörenden JavaScript-Code die WinJS.Resources.processAll-Funktion auf, wenn der HTML-Code geladen wird.

      
      WinJS.Application.onloaded = function(){
          WinJS.Resources.processAll();
      }
      
      
      

      Wenn zusätzlicher HTML-Code in ein WinJS.UI.Pages.PageControl-Objekt geladen wird, rufen Sie WinJS.Resources.processAll(element) in der IPageControlMembers.ready-Methode der Seitensteuerung auf. Dabei entspricht element dem zu ladenden HTML-Element (und den untergeordneten Elementen). Dieses Beispiel basiert auf Szenario 6 unter Anwendungsressourcen und Lokalisierung – Beispiel:

      
      var output;
      
      var page = WinJS.UI.Pages.define("/html/scenario6.html", {
          ready: function (element, options) {
              output = document.getElementById('output');
              WinJS.Resources.processAll(output); // Refetch string resources
              WinJS.Resources.removeEventListener("contextchanged", refresh, false);
              WinJS.Resources.addEventListener("contextchanged", refresh, false);
          }
      });
      
      
    3. Verweisen Sie in der HTML mit den Ressourcenbezeichnern ("greeting" und "farewell") aus den Ressourcendateien auf die Zeichenfolgenressourcen.
      
      <h2><span data-win-res="{textContent: 'greeting'}"></span></h2>
      <h2><span data-win-res="{textContent: 'farewell'}"></span></h2>
      
      
      
    4. Verweisen Sie auf die Zeichenfolgenressourcen für Attribute.
      
      <div data-win-res="{attributes: {'aria-label' : 'String1'}}" >
      
      
    5. Verweisen Sie auf die Zeichenfolgenressourcen in JavaScript.
      
      var el = document.getElementById('header');
      var res = WinJS.Resources.getString('greeting');
      el.textContent = res.value;
      el.setAttribute('lang', res.lang);
      
      
      

    Das allgemeine Muster des Attributs "data-win-res" für den HTML-Ersatz ist: data-win-res="{propertyname1: 'resource ID', propertyname2: 'resource ID2'}".

    Hinweis  Wenn die Zeichenfolge kein Markup enthält, sollte die Ressource möglichst an die "textContent"-Eigenschaft, und nicht an "innerHTML" gebunden werden. Die "textContent"-Eigenschaft ist sehr viel schneller zu ersetzen als "innerHTML".

Weitere Details zum Hinzufügen von Lokalisierung und weiteren Sprachen finden Sie unter Schnellstart: Übersetzen von UI-Ressourcen.

Verwandte Themen

So wird's gemacht: Benennen von Ressourcen mit Qualifizierern
So wird's gemacht: Laden von Zeichenfolgenressourcen
WinJS.Resources.processAll
Schnellstart: Übersetzen von UI-Ressourcen
Anwendungsressourcen und Lokalisierung – Beispiel
Eigenschaftenseiten, JavaScript.
Das BCP-47-Sprachtag

 

 

Anzeigen:
© 2014 Microsoft