Sdílet prostřednictvím


Gerätevorlagenunterstützung

Aktualisiert: November 2007

Die Gerätevorlagenunterstützung wird als Teil des DeviceSpecific/Choice-Konstrukts bereitgestellt. Das Schreiben von ASP.NET Mobile-Steuerelementen, die Gerätevorlagen bereitstellen, ist dem Schreiben von ASP.NET-Serversteuerelementen mit Vorlagen sehr ähnlich. Beachten Sie dabei jedoch die folgenden, für mobile Steuerelemente spezifischen Merkmale:

  • Jedes mobile Steuerelement, das Gerätevorlagen unterstützt, implementiert die ITemplateable-Schnittstelle. Hierbei handelt es sich um eine Markierungsschnittstelle, die keine Methoden besitzt.

  • Steuerelemente, die Gerätevorlagen unterstützen, müssen einen Standarddarstellungsmodus besitzen, sodass ein Steuerelement auch dann auf Geräten dargestellt werden kann, wenn keine Gerätevorlagen definiert oder angegeben sind.

  • Entwickler von Steuerelementen müssen entscheiden, wie Gerätevorlagen bei der Darstellung behandelt werden. Ein mögliches Verhalten ist das Wechseln in einen Modus, in dem ausschließlich Vorlagen verwendet werden, wenn eine Gerätevorlage definiert oder ausgewählt ist. Das Steuerelement führt dann mithilfe bereitgestellter Vorlagen die gesamte Wiedergabe aus. Das List-Steuerelement ist ein Beispiel für ein solches Steuerelement. Ein Steuerelement kann Vorlagen auch in einem rein additiven Prozess verwenden: Wenn eine bestimmte Vorlage definiert und ausgewählt wurde, kann diese verwendet werden, um der Standarddarstellung Teile hinzuzufügen oder um Teile zu ersetzen. Das Form-Steuerelement ist ein Beispiel für ein Steuerelement mit einem solchen Verhalten.

  • Ein mobiles Steuerelement macht keine ITemplate-Eigenschaften verfügbar. Stattdessen hat es Zugriff auf eine Auflistung von definierten Vorlagen. Die MobileControl-Basisklasse enthält zwei Member, die ein Steuerelement bei der Verwendung von Gerätevorlagen unterstützen können:

    • Die IsTemplated-Eigenschaft gibt an, ob das Steuerelement über definierte und ausgewählte Vorlagen verfügt. Dies ist im folgenden Beispiel dargestellt.

      if (mobileControl.IsTemplated)
      {
          return true;
      }
      
    • Die GetTemplate-Methode gibt die Gerätevorlage des angegebenen Namens oder null zurück, wenn kein Name festgelegt wurde. Im folgenden Beispiel wird veranschaulicht, wie Gerätevorlagen abgerufen und auf den Status null getestet werden.

      public override void CreateDefaultTemplatedUI(bool doDataBind) 
          {
              ITemplate headerTemplate = GetTemplate(Constants.HeaderTemplateTag);
              ITemplate footerTemplate = GetTemplate(Constants.FooterTemplateTag);
              ITemplate scriptTemplate = GetTemplate(Constants.ScriptTemplateTag);
              if (headerTemplate != null)
              {
                  _headerContainer = new TemplateContainer();
                  headerTemplate.InstantiateIn(_headerContainer);
                  _headerContainer.EnablePagination = false;
                  Controls.AddAt(0, _headerContainer);
              }
              if (footerTemplate != null)
              {
                  _footerContainer = new TemplateContainer();
                  footerTemplate.InstantiateIn(_footerContainer);
                  _footerContainer.EnablePagination = false;
                  Controls.Add(_footerContainer);
              }
              if (scriptTemplate != null)
              {
                  _scriptContainer = new TemplateContainer();
                  scriptTemplate.InstantiateIn(_scriptContainer);
                  _scriptContainer.EnablePagination = false;
              }
          }
      

Die folgende Tabelle beschreibt die Vorlagen, die durch das Form-Steuerelement verfügbar sind. Das Form-Steuerelement unterstützt sowohl gerätespezifische als auch geräteunabhängige Vorlagensätze.

Vorlage

Beschreibung

Headervorlage

Die Headervorlage wird am oberen Rand des Formulars dargestellt. Wenn mehrere Seitenumbrüche in das Formular eingefügt wurden, enthält jeder Bildschirm diesen Header. Die Headervorlage kann Teil eines geräteunabhängigen Vorlagensatzes sein. Wenn der Vorlagensatz geräteunabhängig ist, enthält die Headervorlage mobile Steuerelemente.

Footervorlage

Die Footervorlage wird am unteren Rand des Formulars dargestellt. Wenn mehrere Seitenumbrüche in das Formular eingefügt wurden, enthält jeder Bildschirm diesen Footer. Die Footervorlage kann Teil eines geräteunabhängigen Vorlagensatzes sein. Wenn der Vorlagensatz geräteunabhängig ist, enthält die Footervorlage mobile Steuerelemente.

Skriptvorlage

Die Skriptvorlage wird am oberen Rand des Formulars dargestellt. Wenn mehrere Seitenumbrüche in das Formular eingefügt wurden, enthält jeder Bildschirm diese Skriptvorlage. Bei HTML-Geräten wird der in der Skriptvorlage enthaltene Code unmittelbar nach dem öffnenden <head>-Tag eingefügt, bei WML-Geräten unmittelbar nach dem öffnenden <card>-Tag.

Diese Vorlagen sind auch programmgesteuert verfügbar. Weitere Informationen finden Sie in den Erläuterungen zur Footer-Eigenschaft, zur Header-Eigenschaft und zur Script-Eigenschaft.

Siehe auch

Konzepte

Vorlagensätze und Steuerelemente mit Vorlagen

Implementieren der Wiedergabe mit Vorlagen

Weitere Ressourcen

Hinzufügen neuer Geräteadapter und Gerätunterstützung