Freigeben über


CatalogZone Konstruktor

Definition

Initialisiert eine neue Instanz der CatalogZone-Klasse.

public:
 CatalogZone();
public CatalogZone ();
Public Sub New ()

Beispiele

Im folgenden Codebeispiel wird die programmgesteuerte Verwendung des CatalogZone Konstruktors in einem benutzerdefinierten CatalogZone Steuerelement veranschaulicht. Der Konstruktor wird verwendet, um einige Standardwerte für das Steuerelement zu initialisieren. Der folgende Code zeigt die benutzerdefinierte CatalogZone Klasse mit dem oben deklarierten Konstruktor. Den vollständigen Code und anweisungen, die zum Einrichten und Ausführen des Beispiels erforderlich sind, finden Sie im Abschnitt Beispiel in der CatalogZone Klassenübersicht.

using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Security.Permissions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

namespace Samples.AspNet.CS.Controls
{
  // Create a customized CatalogZone control by setting 
  // some properties in the constructor.
  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class MyCatalogZone : CatalogZone
  {
    public MyCatalogZone()
    {
      this.HeaderText = "My Company Catalog";
      this.HeaderCloseVerb.Text = "Close Catalog";
      this.CloseVerb.Text = "Close Catalog";
    }
  }

  // Create a custom WebPart control to add to a WebPartZone.
  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class TextDisplayWebPart : WebPart
  {
    private String _contentText = null;
    TextBox input;
    Label DisplayContent;
    Literal lineBreak;

    [Personalizable(), WebBrowsable]
    public String ContentText
    {
      get { return _contentText; }
      set { _contentText = value; }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      DisplayContent = new Label();
      DisplayContent.BackColor = Color.LightBlue;
      DisplayContent.Text = this.ContentText;
      this.Controls.Add(DisplayContent);

      lineBreak = new Literal();
      lineBreak.Text = @"<br />";
      Controls.Add(lineBreak);

      input = new TextBox();
      this.Controls.Add(input);
      Button update = new Button();
      update.Text = "Set Label Content";
      update.Click += new EventHandler(this.submit_Click);
      this.Controls.Add(update);
    }

    private void submit_Click(object sender, EventArgs e)
    {
      // Update the label string.
      if (!string.IsNullOrEmpty(input.Text))
      {
        _contentText = input.Text + @"<br />";
        input.Text = String.Empty;
        DisplayContent.Text = this.ContentText;
      }
    }
  }
}
Imports System.Collections
Imports System.ComponentModel
Imports System.Drawing
Imports System.Security.Permissions
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts

Namespace Samples.AspNet.VB.Controls

  ' Create a custom CatalogZone control by setting some 
  ' properties in the constructor.
  <AspNetHostingPermission(SecurityAction.Demand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class MyCatalogZone
    Inherits CatalogZone

    Public Sub New()
      Me.HeaderText = "My Company Catalog"
      Me.HeaderCloseVerb.Text = "Close Catalog"
      Me.CloseVerb.Text = "Close Catalog"
    End Sub

  End Class


  ' Create a custom WebPart to add to a WebPartZone.
  <AspNetHostingPermission(SecurityAction.Demand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class TextDisplayWebPart
    Inherits WebPart
    Private _contentText As String = Nothing
    Private _fontStyle As String = Nothing
    Private input As TextBox
    Private DisplayContent As Label
    Private lineBreak As Literal

    <Personalizable(), WebBrowsable()> _
    Public Property ContentText() As String
      Get
        Return _contentText
      End Get
      Set(ByVal value As String)
        _contentText = value
      End Set
    End Property

    Protected Overrides Sub CreateChildControls()
      Controls.Clear()
      DisplayContent = New Label()
      DisplayContent.BackColor = Color.LightBlue
      DisplayContent.Text = Me.ContentText
      Me.Controls.Add(DisplayContent)

      lineBreak = New Literal()
      lineBreak.Text = "<br />"
      Controls.Add(lineBreak)

      input = New TextBox()
      Me.Controls.Add(input)
      Dim update As New Button()
      update.Text = "Set Label Content"
      AddHandler update.Click, AddressOf Me.submit_Click
      Me.Controls.Add(update)

    End Sub

    Private Sub submit_Click(ByVal sender As Object, _
                             ByVal e As EventArgs)
      ' Update the label string.
      If input.Text <> String.Empty Then
        _contentText = input.Text + "<br />"
        input.Text = String.Empty
        DisplayContent.Text = Me.ContentText
      End If

    End Sub

  End Class

End Namespace

Hinweise

Da das CatalogZone Steuerelement eine Zonenvorlage implementiert, wird es in der Regel deklarativ verwendet, und Sie müssen selten eine neue Instanz der -Klasse mithilfe CatalogZone des Konstruktors erstellen. Wenn Sie jedoch von der CatalogZone -Klasse erben, um eine benutzerdefinierte Zone zu erstellen, sollten Sie den Konstruktor verwenden, um einige seiner Eigenschaftswerte zu initialisieren und die Darstellung anzupassen.

Gilt für:

Weitere Informationen