Initialize Methode (IComponent)
Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

ControlDesigner.Initialize-Methode (IComponent)

 

Initialisiert den Steuerelement-Designer und lädt die angegebene Komponente.

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

public override void Initialize(
	IComponent component
)

Parameter

component

Das Steuerelement, das entworfen wird.

Die Initialize-Methode wird vom Entwurfshost aufgerufen, um die folgenden Aktionen abzuschließen:

  • Laden des Steuerelement-Designers mit der zu entwerfenden Komponente.

  • Einrichten der Ansicht für das Steuerelement mit der SetViewFlags-Methode.

  • Überprüfen Sie, ob das zugeordnete Steuerelement vom richtigen Typ ist.

Im folgenden Codebeispiel wird die Verwendung einer Steuerelementklasse und einer Steuerelement-Designer-Klasse gezeigt, die die Initialize-Methode überschreiben, um interne Variablen zu initialisieren.

using System;
using System.ComponentModel;
using System.Web.UI;
using System.Web.UI.Design;
using System.Web.UI.WebControls;

namespace AspNet.Samples
{
    // Create a custom class to render the Text property
    [Designer(typeof(SimpleDesigner)), DefaultProperty("Text"), 
    ToolboxData("<{0}:Simple runat=\"server\"></{0}:Simple>")]
    public sealed class Simple : WebControl
    {
        public Simple()
        { }

        // Create a Text property
        [Browsable(true), Bindable(true), 
            PersistenceMode(PersistenceMode.Attribute)]
        public string Text
        {
            get
            {
                object o = ViewState["TextProp"];
                return (o == null) ? "Sample Text" : (string)o;
            }
            set { ViewState["TextProp"] = value; }
        }

        // Render the text inside the control
        protected override void RenderContents(HtmlTextWriter writer)
        {
            writer.Write(Text);
        }
    }
}

namespace AspNet.Samples
{
    //Create a designer class for the Simple control
    public sealed class SimpleDesigner : ControlDesigner
    {
        // Declare a reference to the Simple class
        private Simple simpleControl;

        public SimpleDesigner()
        { }

        public override void Initialize(IComponent ponent)
        {
            base.Initialize(ponent);

            // Get a reference to the control
            simpleControl = (Simple)ponent;

            //Set Text to the control's ID
            simpleControl.Text = simpleControl.ID;
        }

        // Allow resizing the control in the design host
        public override bool AllowResize
        {
            get
            {
                return true;
            }
        }

        public override string GetDesignTimeHtml()
        {
            if (simpleControl.Text.Length > 0)
            {
                string spec = "<a href='{0}.aspx'>{0}</a>";
                return String.Format(spec, simpleControl.Text);
            }
            else
                return GetEmptyDesignTimeHtml();
        }
    }
}

.NET Framework
Verfügbar seit 1.1
Zurück zum Anfang
Anzeigen:
© 2016 Microsoft