Exportieren (0) Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

ITemplate-Schnittstelle

Definiert das Verhalten für das Auffüllen eines auf Vorlagen basierenden ASP.NET-Serversteuerelements mit untergeordneten Steuerelementen. Die untergeordneten Steuerelemente stellen die Inlinevorlagen dar, die für die Seite definiert sind.

Namespace:  System.Web.UI
Assembly:  System.Web (in System.Web.dll)

public interface ITemplate

Der ITemplate-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche MethodeInstantiateInDefiniert bei der Implementierung durch eine Klasse das Control-Objekt, zu dem untergeordnete Steuerelemente und Vorlagen gehören. Diese untergeordneten Steuerelemente wiederum werden innerhalb einer Inlinevorlage definiert.
Zum Seitenanfang

Diese Schnittstelle wird von benutzerdefinierten Serversteuerelementen verwendet, jedoch nie von ihnen implementiert. Sie wird immer von ASP.NET implementiert.

Im folgenden Codebeispiel wird ein einfaches Serversteuerelement mit Vorlagen veranschaulicht, das mithilfe der ITemplate-Schnittstelle eine auf Vorlagen beruhende Eigenschaft erstellt.


using System;
using System.Web;
using System.Web.UI;

namespace TemplateControlSamples {

    public class TemplateItem : Control, INamingContainer {
        private String     _message         = null;

        public TemplateItem(String message) {
            _message = message;
        }

        public String Message {

           get {
              return _message;
           }
           set {
              _message = value;
           }
        }
    }

    [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")]
    [ParseChildren(true)]
    public class Template1 : Control, INamingContainer {

        private ITemplate  _messageTemplate = null;
        private String     _message         = null;

        public String Message {

           get {
              return _message;
           }
           set {
              _message = value;
           }
        }

        [
            PersistenceMode(PersistenceMode.InnerProperty),
            TemplateContainer(typeof(TemplateItem))
        ]
        public ITemplate MessageTemplate {
           get {
              return _messageTemplate;
           }
           set {
              _messageTemplate = value;
           }
        }

        protected override void CreateChildControls() {

           // If a template has been specified, use it to create children.
           // Otherwise, create a single LiteralControl with the message value.

           if (MessageTemplate != null) {
              Controls.Clear();
              TemplateItem i = new TemplateItem(this.Message);
              MessageTemplate.InstantiateIn(i);
              Controls.Add(i);
           }
           else {
              this.Controls.Add(new LiteralControl(this.Message));
           }
        }
    }
}
   


.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2015 Microsoft