DeclarativeCatalogPart Klasse

Definition

Ermöglicht es Entwicklern, einen Katalog mit WebPart oder andere Serversteuerelemente zu einer Webseite im deklarativen Seitenspeicherungsformat hinzuzufügen. Diese Klasse kann nicht vererbt werden.

public ref class DeclarativeCatalogPart sealed : System::Web::UI::WebControls::WebParts::CatalogPart
public sealed class DeclarativeCatalogPart : System.Web.UI.WebControls.WebParts.CatalogPart
type DeclarativeCatalogPart = class
    inherit CatalogPart
Public NotInheritable Class DeclarativeCatalogPart
Inherits CatalogPart
Vererbung
DeclarativeCatalogPart

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie das DeclarativeCatalogPart Steuerelement deklarativ auf einer Webseite verwendet wird. Das Beispiel umfasst vier Teile:

  • Ein Benutzersteuerelement, mit dem Sie die Anzeigemodi auf einer Webparts-Seite ändern können.

  • Eine Webseite, die ein CatalogZone -Steuerelement und ein DeclarativeCatalogPart -Steuerelement enthält.

  • Eine Quellcodedatei, die zwei benutzerdefinierte WebPart Steuerelemente enthält.

  • Eine Erläuterung, wie das Beispiel funktioniert, wenn Sie die Seite in einem Browser laden.

Der erste Teil dieses Codebeispiels ist das Benutzersteuerelement, mit dem Sie die Anzeigemodi auf der Seite ändern können. Ausführliche Informationen zu Anzeigemodi und eine Beschreibung des Quellcodes in diesem Steuerelement finden Sie unter Exemplarische Vorgehensweise: Ändern von Anzeigemodi auf einer Webparts-Seite.

<%@ control language="C#" classname="DisplayModeMenuCS"%>
<script runat="server">
  
 // Use a field to reference the current WebPartManager.
  WebPartManager _manager;

  void Page_Init(object sender, EventArgs e)
  {
    Page.InitComplete += new EventHandler(InitComplete);
    
  }  

  void InitComplete(object sender, System.EventArgs e)
  {
    _manager = WebPartManager.GetCurrentWebPartManager(Page);

    String browseModeName = WebPartManager.BrowseDisplayMode.Name;

    // Fill the dropdown with the names of supported display modes.
    foreach (WebPartDisplayMode mode in _manager.SupportedDisplayModes)
    {
      String modeName = mode.Name;
      // Make sure a mode is enabled before adding it.
      if (mode.IsEnabled(_manager))
      {
        ListItem item = new ListItem(modeName, modeName);
        DisplayModeDropdown.Items.Add(item);
      }
    }

    // If shared scope is allowed for this user, display the scope-switching
    // UI and select the appropriate radio button for the current user scope.
    if (_manager.Personalization.CanEnterSharedScope)
    {
      Panel2.Visible = true;
      if (_manager.Personalization.Scope == PersonalizationScope.User)
        RadioButton1.Checked = true;
      else
        RadioButton2.Checked = true;
    }
    
  }
 
  // Change the page to the selected display mode.
  void DisplayModeDropdown_SelectedIndexChanged(object sender, EventArgs e)
  {
    String selectedMode = DisplayModeDropdown.SelectedValue;

    WebPartDisplayMode mode = _manager.SupportedDisplayModes[selectedMode];
    if (mode != null)
      _manager.DisplayMode = mode;
  }

  // Set the selected item equal to the current display mode.
  void Page_PreRender(object sender, EventArgs e)
  {
    ListItemCollection items = DisplayModeDropdown.Items;
    int selectedIndex = 
      items.IndexOf(items.FindByText(_manager.DisplayMode.Name));
    DisplayModeDropdown.SelectedIndex = selectedIndex;
  }

  // Reset all of a user's personalization data for the page.
  protected void LinkButton1_Click(object sender, EventArgs e)
  {
    _manager.Personalization.ResetPersonalizationState();
  }

  // If not in User personalization scope, toggle into it.
  protected void RadioButton1_CheckedChanged(object sender, EventArgs e)
  {
    if (_manager.Personalization.Scope == PersonalizationScope.Shared)
      _manager.Personalization.ToggleScope();
  }

  // If not in Shared scope, and if user is allowed, toggle the scope.
  protected void RadioButton2_CheckedChanged(object sender, EventArgs e)
  {
    if (_manager.Personalization.CanEnterSharedScope && 
        _manager.Personalization.Scope == PersonalizationScope.User)
      _manager.Personalization.ToggleScope();
  }
</script>
<div>
  <asp:Panel ID="Panel1" runat="server" 
    Borderwidth="1" 
    Width="230" 
    BackColor="lightgray"
    Font-Names="Verdana, Arial, Sans Serif" >
    <asp:Label ID="Label1" runat="server" 
      Text=" Display Mode" 
      Font-Bold="true"
      Font-Size="8"
      Width="120" 
      AssociatedControlID="DisplayModeDropdown"/>
    <asp:DropDownList ID="DisplayModeDropdown" runat="server"  
      AutoPostBack="true" 
      Width="120"
      OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
    <asp:LinkButton ID="LinkButton1" runat="server"
      Text="Reset User State" 
      ToolTip="Reset the current user's personalization data for the page."
      Font-Size="8" 
      OnClick="LinkButton1_Click" />
    <asp:Panel ID="Panel2" runat="server" 
      GroupingText="Personalization Scope"
      Font-Bold="true"
      Font-Size="8" 
      Visible="false" >
      <asp:RadioButton ID="RadioButton1" runat="server" 
        Text="User" 
        AutoPostBack="true"
        GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
      <asp:RadioButton ID="RadioButton2" runat="server" 
        Text="Shared" 
        AutoPostBack="true"
        GroupName="Scope" 
        OnCheckedChanged="RadioButton2_CheckedChanged" />
    </asp:Panel>
  </asp:Panel>
</div>
<%@ control language="vb" classname="DisplayModeMenuVB"%>
<script runat="server">
  ' Use a field to reference the current WebPartManager.
  Dim _manager As WebPartManager

  Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs)
    AddHandler Page.InitComplete, AddressOf InitComplete
  End Sub

  Sub InitComplete(ByVal sender As Object, ByVal e As System.EventArgs)
    _manager = WebPartManager.GetCurrentWebPartManager(Page)
      
    Dim browseModeName As String = WebPartManager.BrowseDisplayMode.Name
      
    ' Fill the dropdown with the names of supported display modes.
    Dim mode As WebPartDisplayMode
    For Each mode In _manager.SupportedDisplayModes
      Dim modeName As String = mode.Name
      ' Make sure a mode is enabled before adding it.
      If mode.IsEnabled(_manager) Then
        Dim item As New ListItem(modeName, modeName)
        DisplayModeDropdown.Items.Add(item)
      End If
    Next mode
      
    ' If shared scope is allowed for this user, display the scope-switching
    ' UI and select the appropriate radio button for the current user scope.
    If _manager.Personalization.CanEnterSharedScope Then
      Panel2.Visible = True
      If _manager.Personalization.Scope = PersonalizationScope.User Then
        RadioButton1.Checked = True
      Else
        RadioButton2.Checked = True
      End If
    End If
   
  End Sub

  ' Change the page to the selected display mode.
  Sub DisplayModeDropdown_SelectedIndexChanged(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    Dim selectedMode As String = DisplayModeDropdown.SelectedValue   
    Dim mode As WebPartDisplayMode = _
      _manager.SupportedDisplayModes(selectedMode)
    If Not (mode Is Nothing) Then
      _manager.DisplayMode = mode
    End If

  End Sub
   
  ' Set the selected item equal to the current display mode.
  Sub Page_PreRender(ByVal sender As Object, ByVal e As EventArgs)
    Dim items As ListItemCollection = DisplayModeDropdown.Items
    Dim selectedIndex As Integer = _
      items.IndexOf(items.FindByText(_manager.DisplayMode.Name))
    DisplayModeDropdown.SelectedIndex = selectedIndex

  End Sub

  ' Reset all of a user's personalization data for the page.
  Protected Sub LinkButton1_Click(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    _manager.Personalization.ResetPersonalizationState()
    
  End Sub

  ' If not in User personalization scope, toggle into it.
  Protected Sub RadioButton1_CheckedChanged(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    If _manager.Personalization.Scope = PersonalizationScope.Shared Then
      _manager.Personalization.ToggleScope()
    End If

  End Sub
   
  ' If not in Shared scope, and if user is allowed, toggle the scope.
  Protected Sub RadioButton2_CheckedChanged(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    If _manager.Personalization.CanEnterSharedScope AndAlso _
      _manager.Personalization.Scope = PersonalizationScope.User Then
      _manager.Personalization.ToggleScope()
    End If

  End Sub

</script>
<div>
  <asp:Panel ID="Panel1" runat="server" 
    Borderwidth="1" 
    Width="230" 
    BackColor="lightgray"
    Font-Names="Verdana, Arial, Sans Serif" >
    <asp:Label ID="Label1" runat="server" 
      Text=" Display Mode" 
      Font-Bold="true"
      Font-Size="8"
      Width="120" 
      AssociatedControlID="DisplayModeDropdown"/>
    <asp:DropDownList ID="DisplayModeDropdown" runat="server"  
      AutoPostBack="true" 
      Width="120"
      OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
    <asp:LinkButton ID="LinkButton1" runat="server"
      Text="Reset User State" 
      ToolTip="Reset the current user's personalization data for the page."
      Font-Size="8" 
      OnClick="LinkButton1_Click" />
    <asp:Panel ID="Panel2" runat="server" 
      GroupingText="Personalization Scope"
      Font-Bold="true"
      Font-Size="8" 
      Visible="false" >
      <asp:RadioButton ID="RadioButton1" runat="server" 
        Text="User" 
        AutoPostBack="true"
        GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
      <asp:RadioButton ID="RadioButton2" runat="server" 
        Text="Shared" 
        AutoPostBack="true"
        GroupName="Scope" 
        OnCheckedChanged="RadioButton2_CheckedChanged" />
    </asp:Panel>
  </asp:Panel>
</div>

Der zweite Teil des Codebeispiels ist die Webseite. Oben auf der Seite befinden sich zwei Register Direktiven, eine für das Benutzersteuerelement und eine für die kompilierte Komponente, die die beiden benutzerdefinierten WebPart Steuerelemente enthält. Beachten Sie, dass die Seite einen deklarativen Verweis auf das Steuerelement enthält, der DeclarativeCatalogPart in der richtigen Hierarchie deklarativer Elemente geschachtelt ist, wie im Abschnitt Hinweise dieses Themas beschrieben. Das <asp:declarativecatalogpart> -Element enthält ein <webpartstemplate> -Element, das wiederum Verweise auf ein Standard-ASP.NET-Steuerelement Calendar und die beiden benutzerdefinierten WebPart Steuerelemente enthält. Dies sind die Steuerelemente, die Benutzer aus dem Katalog auswählen können. Die Seite enthält auch Bearbeitungsfunktionen, wobei ein PropertyGridEditorPart Steuerelement auf der Seite deklariert ist. Mit diesem Steuerelement können Benutzer bestimmte Eigenschaften der benutzerdefinierten WebPart Steuerelemente bearbeiten, nachdem sie der Seite hinzugefügt wurden und nachdem der Benutzer die Seite in den Bearbeitungsmodus gewechselt hat.

<%@ page language="c#" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuCS" 
  Src="DisplayModeMenuCS.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.CS.Controls" 
  Assembly="UserInfoWebPartCS" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head id="Head1" runat="server">
    <title>
      DeclarativeCatalogPart Control
    </title>
  </head>
  <body>
    <form id="form1" runat="server">
      <asp:webpartmanager id="WebPartManager1" runat="server"  />
      <uc1:DisplayModeMenuCS ID="DisplayModeMenu1" runat="server" />
      <asp:webpartzone id="zone1" runat="server" >
        <PartTitleStyle BorderWidth="1" 
          Font-Names="Verdana, Arial"
          Font-Size="110%"
          BackColor="LightBlue" />
        <zonetemplate>
          <asp:BulletedList ID="BulletedList1" 
            Runat="server"
            DisplayMode="HyperLink"
            Title="Favorites">
            <asp:ListItem Value="http://msdn.microsoft.com">
              MSDN
            </asp:ListItem>
            <asp:ListItem Value="http://www.asp.net">
              ASP.NET
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
              MSN
            </asp:ListItem>
          </asp:BulletedList>
        </zonetemplate>
      </asp:webpartzone> 
      <asp:CatalogZone ID="CatalogZone1" runat="server">
        <ZoneTemplate>
          <asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"  
            runat="server" 
            Title="Web Parts Catalog"
            ChromeType="TitleOnly" 
            Description="Contains a user control with Web Parts and 
              an ASP.NET Calendar control.">
            <WebPartsTemplate>
              <asp:Calendar ID="Calendar1" runat="server" 
                Title="My Calendar" 
                Description="ASP.NET Calendar control used as a personal calendar." />
              <aspSample:UserInfoWebPart 
                runat="server"   
                id="userinfo1" 
                title = "User Information WebPart"
                Description ="Contains custom, editable user information 
                  for display on a page." />
              <aspSample:TextDisplayWebPart 
                runat="server"   
                id="TextDisplayWebPart1" 
                title = "Text Display WebPart" 
                Description="Contains a label that users can dynamically update." />
            </WebPartsTemplate>              
          </asp:DeclarativeCatalogPart>
        </ZoneTemplate>
      </asp:CatalogZone>
      <asp:EditorZone ID="EditorZone1" runat="server">
      <ZoneTemplate>
        <asp:PropertyGridEditorPart ID="PropertyGridEditorPart1" runat="server" />
      </ZoneTemplate>
      </asp:EditorZone> 
    </form>
  </body>
</html>
<%@ page language="VB" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuVB" 
  Src="DisplayModeMenuVB.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.VB.Controls" 
  Assembly="UserInfoWebPartVB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>
      DeclarativeCatalogPart Control
    </title>
  </head>
  <body>
    <form id="form1" runat="server">
      <asp:webpartmanager id="WebPartManager1" runat="server"  />
      <uc1:DisplayModeMenuVB ID="DisplayModeMenu1" runat="server" />
      <asp:webpartzone id="zone1" runat="server" >
        <PartTitleStyle BorderWidth="1" 
          Font-Names="Verdana, Arial"
          Font-Size="110%"
          BackColor="LightBlue" />
        <zonetemplate>
          <asp:BulletedList ID="BulletedList1" 
            Runat="server"
            DisplayMode="HyperLink"
            Title="Favorites">
            <asp:ListItem Value="http://msdn.microsoft.com">
              MSDN
            </asp:ListItem>
            <asp:ListItem Value="http://www.asp.net">
              ASP.NET
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
              MSN
            </asp:ListItem>
          </asp:BulletedList>
        </zonetemplate>
      </asp:webpartzone> 
      <asp:CatalogZone ID="CatalogZone1" runat="server">
        <ZoneTemplate>
          <asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"  
            runat="server" 
            Title="Web Parts Catalog"
            ChromeType="TitleOnly" 
            Description="Contains a user control with Web Parts and 
              an ASP.NET Calendar control.">
            <WebPartsTemplate>
              <asp:Calendar ID="Calendar1" runat="server" 
                Title="My Calendar" 
                Description="ASP.NET Calendar control used as a personal calendar." />
              <aspSample:UserInfoWebPart 
                runat="server"   
                id="userinfo1" 
                title = "User Information WebPart"
                Description ="Contains custom, editable user information 
                  for display on a page." />
              <aspSample:TextDisplayWebPart 
                runat="server"   
                id="TextDisplayWebPart1" 
                title = "Text Display WebPart" 
                Description="Contains a label that users can dynamically update." />
            </WebPartsTemplate>              
          </asp:DeclarativeCatalogPart>
        </ZoneTemplate>
      </asp:CatalogZone>
      <asp:EditorZone ID="EditorZone1" runat="server">
      <ZoneTemplate>
        <asp:PropertyGridEditorPart ID="PropertyGridEditorPart1" runat="server" />
      </ZoneTemplate>
      </asp:EditorZone> 
    </form>
  </body>
</html>

Der dritte Teil des Codebeispiels ist der Quellcode für die beiden WebPart Steuerelemente. Beachten Sie, dass einige Eigenschaften für diese Steuerelemente mit dem WebBrowsable -Attribut gekennzeichnet sind. Dadurch kann das PropertyGridEditorPart Steuerelement dynamisch die Benutzeroberfläche (UI) generieren, damit ein Benutzer diese Eigenschaften bearbeiten kann, wenn sich die Steuerelemente im Bearbeitungsmodus befinden. Die Eigenschaften werden auch mit einem WebDisplayName -Attribut gekennzeichnet, um den Text der Bezeichnung anzugeben, die neben jedem Steuerelement auf der Bearbeitungsoberfläche angezeigt wird.

Damit das Codebeispiel ausgeführt werden kann, müssen Sie diesen Quellcode kompilieren. Sie können sie explizit kompilieren und die resultierende Assembly im Ordner Bin ihrer Website oder im globalen Assemblycache ablegen. Alternativ können Sie den Quellcode im Ordner App_Code Ihrer Website ablegen, wo er zur Laufzeit dynamisch kompiliert wird. Eine exemplarische Vorgehensweise, die beide Kompilierungsmethoden veranschaulicht, finden Sie unter Exemplarische Vorgehensweise: Entwickeln und Verwenden eines benutzerdefinierten Webserversteuerelements.

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
{
  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class UserInfoWebPart : WebPart
  {
    HttpServerUtility server = HttpContext.Current.Server;
    private String _userNickName = "Add a nickname.";
    private String _userPetName = "Add a pet's name.";
    private DateTime _userSpecialDate = DateTime.Now;
    private Boolean _userIsCurrent = true;
    private JobTypeName _userJobType = JobTypeName.Unselected;
    public enum JobTypeName
    {
      Unselected = 0,
      Support = 1,
      Service = 2,
      Professional = 3, 
      Technical = 4,
      Manager = 5,
      Executive = 6
    }
    Label NickNameLabel;
    Label PetNameLabel;
    Label SpecialDateLabel;
    CheckBox IsCurrentCheckBox;
    Label JobTypeLabel;

    // Add the Personalizable and WebBrowsable attributes to the  
    // public properties, so that users can save property values  
    // and edit them with a PropertyGridEditorPart control.
    [Personalizable(), WebBrowsable, WebDisplayName("Nickname")]
    public String NickName
    {
      get 
      { 
        object o = ViewState["NickName"];
        if (o != null)
          return (string)o;
        else
          return _userNickName;        
      } 

      set { _userNickName = server.HtmlEncode(value); }
    }

    [Personalizable(), WebBrowsable, WebDisplayName("Pet Name")]
    public String PetName
    {
      get 
      { 
        object o = ViewState["PetName"];
        if (o != null)
          return (string)o;
        else
          return _userPetName;        
      }

      set { _userPetName = server.HtmlEncode(value); }
    }

    [Personalizable(), WebBrowsable(), WebDisplayName("Special Day")]
    public DateTime SpecialDay
    {
      get
      {
        object o = ViewState["SpecialDay"];
        if (o != null)
          return (DateTime)o;
        else
          return _userSpecialDate;
      }

      set { _userSpecialDate = value; }
    }

    [Personalizable(), WebBrowsable(), WebDisplayName("Job Type")]
    public JobTypeName UserJobType
    {
      get
      {
        object o = ViewState["UserJobType"];
        if (o != null)
          return (JobTypeName)o;
        else
          return _userJobType;
      }

      set { _userJobType = (JobTypeName)value; }
    }

    [Personalizable(), WebBrowsable(), WebDisplayName("Is Current")]
    public Boolean IsCurrent
    {
      get
      {
        object o = ViewState["IsCurrent"];
        if (o != null)
          return (Boolean)o;
        else
          return _userIsCurrent;
      }

      set { _userIsCurrent = value; }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();

      NickNameLabel = new Label();
      NickNameLabel.Text = this.NickName;
      SetControlAttributes(NickNameLabel);

      PetNameLabel = new Label();
      PetNameLabel.Text = this.PetName;
      SetControlAttributes(PetNameLabel);

      SpecialDateLabel = new Label();
      SpecialDateLabel.Text = this.SpecialDay.ToShortDateString();
      SetControlAttributes(SpecialDateLabel);

      IsCurrentCheckBox = new CheckBox();
      IsCurrentCheckBox.Checked = this.IsCurrent;
      SetControlAttributes(IsCurrentCheckBox);

      JobTypeLabel = new Label();
      JobTypeLabel.Text = this.UserJobType.ToString();
      SetControlAttributes(JobTypeLabel);

      ChildControlsCreated = true;
    }

    private void SetControlAttributes(WebControl ctl)
    {
      ctl.BackColor = Color.White;
      ctl.BorderWidth = 1;
      ctl.Width = 200;
      this.Controls.Add(ctl);
    }

    protected override void RenderContents(HtmlTextWriter writer)
    {
      writer.Write("Nickname:");
      writer.WriteBreak();
      NickNameLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Pet Name:");
      writer.WriteBreak();
      PetNameLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Special Date:");
      writer.WriteBreak();
      SpecialDateLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Job Type:");
      writer.WriteBreak();
      JobTypeLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Current:");
      writer.WriteBreak();
      IsCurrentCheckBox.RenderControl(writer);
    }
  }

  [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

  <AspNetHostingPermission(SecurityAction.Demand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class UserInfoWebPart
    Inherits WebPart
    Private server As HttpServerUtility = HttpContext.Current.Server
    Private _userNickName As String = "Add a nickname."
    Private _userPetName As String = "Add a pet's name."
    Private _userSpecialDate As DateTime = DateTime.Now
    Private _userIsCurrent As [Boolean] = True
    Private _userJobType As JobTypeName = JobTypeName.Unselected

    Public Enum JobTypeName
      Unselected = 0
      Support = 1
      Service = 2
      Professional = 3
      Technical = 4
      Manager = 5
      Executive = 6
    End Enum

    Private NickNameLabel As Label
    Private PetNameLabel As Label
    Private SpecialDateLabel As Label
    Private IsCurrentCheckBox As CheckBox
    Private JobTypeLabel As Label

    ' Add the Personalizable and WebBrowsable attributes to the  
    ' public properties, so that users can save property values  
    ' and edit them with a PropertyGridEditorPart control.

    <Personalizable(), WebBrowsable(), WebDisplayName("Nickname")> _
    Public Property NickName() As String
      Get
        Dim o As Object = ViewState("NickName")
        If Not (o Is Nothing) Then
          Return CStr(o)
        Else
          Return _userNickName
        End If
      End Get
      Set(ByVal value As String)
        _userNickName = server.HtmlEncode(value)
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Pet Name")> _
    Public Property PetName() As String
      Get
        Dim o As Object = ViewState("PetName")
        If Not (o Is Nothing) Then
          Return CStr(o)
        Else
          Return _userPetName
        End If
      End Get
      Set(ByVal value As String)
        _userPetName = server.HtmlEncode(value)
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Special Day")> _
    Public Property SpecialDay() As DateTime
      Get
        Dim o As Object = ViewState("SpecialDay")
        If Not (o Is Nothing) Then
          Return CType(o, DateTime)
        Else
          Return _userSpecialDate
        End If
      End Get

      Set(ByVal value As DateTime)
        _userSpecialDate = value
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Job Type")> _
    Public Property UserJobType() As JobTypeName
      Get
        Dim o As Object = ViewState("UserJobType")
        If Not (o Is Nothing) Then
          Return CType(o, JobTypeName)
        Else
          Return _userJobType
        End If
      End Get
      Set(ByVal value As JobTypeName)
        _userJobType = CType(value, JobTypeName)
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Is Current")> _
    Public Property IsCurrent() As [Boolean]
      Get
        Dim o As Object = ViewState("IsCurrent")
        If Not (o Is Nothing) Then
          Return CType(o, [Boolean])
        Else
          Return _userIsCurrent
        End If
      End Get
      Set(ByVal value As [Boolean])
        _userIsCurrent = value
      End Set
    End Property

    Protected Overrides Sub CreateChildControls()
      Controls.Clear()

      NickNameLabel = New Label()
      NickNameLabel.Text = Me.NickName
      SetControlAttributes(NickNameLabel)

      PetNameLabel = New Label()
      PetNameLabel.Text = Me.PetName
      SetControlAttributes(PetNameLabel)

      SpecialDateLabel = New Label()
      SpecialDateLabel.Text = Me.SpecialDay.ToShortDateString()
      SetControlAttributes(SpecialDateLabel)

      IsCurrentCheckBox = New CheckBox()
      IsCurrentCheckBox.Checked = Me.IsCurrent
      SetControlAttributes(IsCurrentCheckBox)

      JobTypeLabel = New Label()
      JobTypeLabel.Text = Me.UserJobType.ToString()
      SetControlAttributes(JobTypeLabel)

      ChildControlsCreated = True

    End Sub

    Private Sub SetControlAttributes(ByVal ctl As WebControl)
      ctl.BackColor = Color.White
      ctl.BorderWidth = 1
      ctl.Width = 200
      Me.Controls.Add(ctl)
    End Sub

    Protected Overrides Sub RenderContents(ByVal writer As HtmlTextWriter)
      writer.Write("Nickname:")
      writer.WriteBreak()
      NickNameLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Pet Name:")
      writer.WriteBreak()
      PetNameLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Special Date:")
      writer.WriteBreak()
      SpecialDateLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Job Type:")
      writer.WriteBreak()
      JobTypeLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Current:")
      writer.WriteBreak()
      IsCurrentCheckBox.RenderControl(writer)

    End Sub

  End Class


  <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

Wenn Sie die Seite in einem Browser laden, wählen Sie im Dropdownlistensteuerelement Anzeigemodus die Option Katalogmodus aus, um in den Katalogmodus zu wechseln. Im Katalogmodus können Sie die Steuerelemente anzeigen, die zur Seite hinzugefügt werden können. Fügen Sie alle drei Steuerelemente hinzu, und verwenden Sie dann die Dropdownliste Anzeigemodus , um die Seite in den Browsermodus zurückzugeben. Die drei Steuerelemente werden auf der Seite angezeigt. Wenn Sie die Dropdownliste Anzeigemodus verwenden und die Seite in den Bearbeitungsmodus wechseln, können Sie auf das Verbenmenü (den Pfeil nach unten) in der Titelleiste des Benutzerinformations-WebPart-Steuerelements klicken und dann auf Bearbeiten klicken, um das Steuerelement zu bearbeiten. Wenn die Bearbeitungsoberfläche angezeigt wird, wird das PropertyGridEditorPart Steuerelement angezeigt. Beachten Sie, dass für jede der Eigenschaften der Klasse, die UserInfoWebPart mit dem WebBrowsable -Attribut markiert wurde, ein Steuerelement gerendert wird. Wenn Sie einige Änderungen an der Bearbeitungsbenutzeroberfläche vornehmen und auf die Schaltfläche Übernehmen klicken, können Sie die Dropdownliste Anzeigemodus verwenden, um die Seite in den Browsermodus zurückzugeben und die vollständigen Auswirkungen der Bearbeitungsänderungen anzuzeigen.

Hinweise

Genau wie es toolorientierte Zonen im Webparts-Steuerelementsatz gibt (ausführliche Informationen finden Sie in der ToolZone Klassenübersicht), gibt es toolorientierte Part Steuerelemente, und jedes dieser Steuerelemente muss sich in einem bestimmten Typ von Toolzone befinden. Toolorientierte Teilesteuerelemente im Webparts-Steuerelementsatz weisen zwei unterscheidungsfähige Merkmale auf:

  • Sie sind Hilfssteuerelemente, mit denen Endbenutzer Steuerelemente auf einer Webpartsseite personalisieren können.

  • Sie sind nur in bestimmten Anzeigemodi sichtbar.

DeclarativeCatalogPart ist ein Teilsteuerelement, das sich in einem CatalogZoneBase Zonentyp befinden muss, z. B. der Zone, die CatalogZone mit dem Webparts-Steuerelementsatz bereitgestellt wird. Das DeclarativeCatalogPart Steuerelement wird nur sichtbar, wenn sich eine Webseite im Kataloganzeigemodus befindet.

Das DeclarativeCatalogPart -Steuerelement bietet Entwicklern die Möglichkeit, einem Katalog auf einer Webseite deklarativ eine Reihe von Serversteuerelementen hinzuzufügen. Ein Katalog im Webparts-Steuerelementsatz ist einfach eine Liste von WebPart oder anderen Serversteuerelementen, die sichtbar ist, wenn sich eine Seite im Kataloganzeigemodus befindet. Ein Benutzer kann Steuerelemente aus der Liste auswählen und sie der Webseite hinzufügen, wodurch Benutzer effektiv die Möglichkeit haben, den Satz von Steuerelementen und die Funktionalität auf einer Seite zu ändern.

Hinweis

Benutzer können einer Webseite mehrere Instanzen desselben Steuerelements in einem Katalog hinzufügen.

Ein Vorteil der Verwendung eines DeclarativeCatalogPart Steuerelements zum Erstellen eines Katalogs von Serversteuerelementen besteht darin, dass keine Codierung erforderlich ist. Seitenentwickler können mit dem Steuerelement vollständig im deklarativen Format (oder Seitenpersistenz) arbeiten, daher der Name des Steuerelements.

Das DeclarativeCatalogPart Steuerelement verfügt über eine nützliche Eigenschaft, mit der Entwickler einen Katalog von Steuerelementen einrichten können, der auf einer gesamten Website verwendet werden kann. Anstatt einzelne Serversteuerelemente innerhalb eines Steuerelements DeclarativeCatalogPart zu deklarieren, kann ein Entwickler den WebPartsListUserControlPath Eigenschaftswert auf den Pfad eines Benutzersteuerelements festlegen, das die Liste der Serversteuerelemente enthält, die im Katalog enthalten sein sollen. Zur Laufzeit werden die Serversteuerelemente, auf die im Benutzersteuerelement verwiesen wird, in den Katalog geladen. Auf diese Weise können mehrere Seiten oder Websites auf dasselbe Benutzersteuerelement verweisen, um einen Katalog zu erstellen. Wenn die Liste der Serversteuerelemente des Benutzersteuerelements aktualisiert wird, werden alle Kataloge basierend auf dem Benutzersteuerelement aktualisiert.

Die DeclarativeCatalogPart -Klasse verfügt über eine Reihe öffentlicher Eigenschaften, die die geerbten Eigenschaften überschreiben. Die meisten dieser Eigenschaften werden nicht zum Rendern des Steuerelements verwendet. Sie werden nur überschrieben, sodass spezielle Codeattribute für sie festgelegt werden können, um sie in Entwurfstools wie Microsoft Visual Studio 2005 auszublenden. Sie sollten diese ausgeblendeten Eigenschaften nicht verwenden, da sie keine Auswirkungen auf das Rendering haben. Die Tatsache, dass sie in IntelliSense und im Bereich Eigenschaften in Visual Studio ausgeblendet sind, hilft Entwicklern, sie versehentlich zu verwenden. Alle diese ausgeblendeten Eigenschaften werden in den jeweiligen Hilfethemen als solche notiert.

Die DeclarativeCatalogPart -Klasse verfügt auch über mehrere Methoden. Die GetAvailableWebPartDescriptions -Methode ruft ein WebPartDescription -Objekt für jedes WebPart Steuerelement im Katalog ab, wodurch ein DeclarativeCatalogPart Steuerelement Informationen zu jedem Serversteuerelement anzeigen kann, ohne eine instance davon erstellen zu müssen. Eine weitere Methode ist die GetWebPart -Methode. Diese Methode ruft basierend auf der an die -Methode übergebenen Beschreibung einen instance eines bestimmten WebPart Steuerelements ab.

Hinweis

Um die Barrierefreiheit zu verbessern, wird das DeclarativeCatalogPart Steuerelement in einem <fieldset> -Element gerendert. Das <fieldset> -Element gruppiert den zugehörigen Satz von Steuerelementen, die für die DeclarativeCatalogPart Bearbeitung im Steuerelement verwendet werden, und es erleichtert die Navigation im Registerkartenformat zwischen diesen Steuerelementen sowohl für visuelle Benutzer-Agents (wie normale Webbrowser) als auch sprachorientierte Benutzer-Agents (z. B. Bildschirmlesesoftware).

Konstruktoren

DeclarativeCatalogPart()

Initialisiert eine neue Instanz der Klasse.

Eigenschaften

AccessKey

Diese geerbte Eigenschaft wird beim Rendern eines DeclarativeCatalogPart-Steuerelements vom Webparts-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

Adapter

Ruft den browserspezifischen Adapter für das Steuerelement ab.

(Geerbt von Control)
AppRelativeTemplateSourceDirectory

Ruft das anwendungsrelative virtuelle Verzeichnis des Page-Objekts oder des UserControl-Objekt ab, das dieses Steuerelement enthält, oder legt dieses Verzeichnis fest.

(Geerbt von Control)
Attributes

Ruft die Auflistung von beliebigen Attributen (nur für die Darstellung) ab, die keinen Eigenschaften des Steuerelements entsprechen.

(Geerbt von WebControl)
BackColor

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

BackImageUrl

Diese geerbte Eigenschaft wird beim Rendern eines DeclarativeCatalogPart-Steuerelements vom Webparts-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

BindingContainer

Ruft das Steuerelement ab, das die Datenbindung dieses Steuerelements enthält.

(Geerbt von Control)
BorderColor

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

BorderStyle

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

BorderWidth

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

ChildControlsCreated

Ruft einen Wert ab, der angibt, ob die untergeordneten Steuerelemente des Serversteuerelements erstellt wurden.

(Geerbt von Control)
ChromeState

Ruft ab oder legt fest, ob ein Teilsteuerelement sich im minimierten oder normalen Zustand befindet.

(Geerbt von Part)
ChromeType

Ruft den Typ des Rahmens ab, der ein Webparts-Steuerelement umgibt, oder legt diesen fest.

(Geerbt von Part)
ClientID

Ruft die Steuerelement-ID für HTML-Markup ab, das von ASP.NET generiert wird.

(Geerbt von Control)
ClientIDMode

Ruft den Algorithmus ab, mit dem der Wert der ClientID-Eigenschaft generiert wird, oder legt diesen fest.

(Geerbt von Control)
ClientIDSeparator

Ruft einen Zeichenwert ab, der das in der ClientID-Eigenschaft verwendete Trennzeichen darstellt.

(Geerbt von Control)
Context

Ruft das dem Serversteuerelement für die aktuelle Webanforderung zugeordnete HttpContext-Objekt ab.

(Geerbt von Control)
Controls

Ruft ein ControlCollection-Objekt ab, das die untergeordneten Steuerelemente für ein angegebenes Serversteuerelement in der Hierarchie der Benutzeroberfläche enthält.

(Geerbt von Part)
ControlStyle

Ruft den Stil des Webserversteuerelements ab. Diese Eigenschaft wird hauptsächlich von Steuerelemententwicklern verwendet.

(Geerbt von WebControl)
ControlStyleCreated

Ruft einen Wert ab, der angibt, ob ein Style-Objekt für die ControlStyle-Eigenschaft erstellt wurde. Diese Eigenschaft wird hauptsächlich von Steuerelemententwicklern verwendet.

(Geerbt von WebControl)
CssClass

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

DataItemContainer

Ruft einen Verweis auf den Namenscontainer ab, wenn vom Namenscontainer IDataItemContainer implementiert wird.

(Geerbt von Control)
DataKeysContainer

Ruft einen Verweis auf den Namenscontainer ab, wenn vom Namenscontainer IDataKeysControl implementiert wird.

(Geerbt von Control)
DefaultButton

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

Description

Ruft einen kurzen Ausdruck ab, der die Funktion des Teilsteuerelements zusammenfasst und in QuickInfos und Katalogen von Teilsteuerelementen verwendet wird, oder legt diesen fest.

(Geerbt von Part)
DesignMode

Ruft einen Wert ab, der angibt, ob ein Steuerelement auf einer Entwurfsoberfläche verwendet wird.

(Geerbt von Control)
Direction

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

DisplayTitle

Ruft eine Zeichenfolge ab, die den aktuellen Titel eines CatalogPart-Steuerelements enthält.

(Geerbt von CatalogPart)
Enabled

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

EnableTheming

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

EnableViewState

Ruft einen Wert ab, der dem anfordernden Client angibt, ob das Serversteuerelement seinen Ansichtszustand sowie den Ansichtszustand von jedem enthaltenen untergeordneten Steuerelement beibehält, oder legt diesen fest.

(Geerbt von Control)
Events

Ruft eine Liste von Ereignishandlerdelegaten für das Steuerelement ab. Diese Eigenschaft ist schreibgeschützt.

(Geerbt von Control)
Font

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

ForeColor

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

GroupingText

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

HasAttributes

Ruft einen Wert ab, der angibt, ob für das Steuerelement Attribute festgelegt wurden.

(Geerbt von WebControl)
HasChildViewState

Ruft einen Wert ab, der angibt, ob in den untergeordneten Steuerelementen des aktuellen Serversteuerelements gespeicherte Einstellungen für den Ansichtszustand vorhanden sind.

(Geerbt von Control)
Height

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

HorizontalAlign

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

ID

Ruft den programmgesteuerten Bezeichner ab, der dem Serversteuerelement zugewiesen ist, oder legt diesen fest.

(Geerbt von Control)
IdSeparator

Ruft das als Trennzeichen für Steuerelementbezeichner verwendete Zeichen ab.

(Geerbt von Control)
IsChildControlStateCleared

Ruft einen Wert ab, der angibt, ob in diesem Steuerelements enthaltene Steuerelemente über einen Steuerelementzustand verfügen.

(Geerbt von Control)
IsEnabled

Ruft einen Wert ab, der angibt, ob das Steuerelement aktiviert ist.

(Geerbt von WebControl)
IsTrackingViewState

Ruft einen Wert ab, der angibt, ob das Serversteuerelement Änderungen des Ansichtszustands speichert.

(Geerbt von Control)
IsViewStateEnabled

Ruft einen Wert ab, der angibt, ob der Ansichtszustand für dieses Steuerelement aktiviert ist.

(Geerbt von Control)
LoadViewStateByID

Ruft einen Wert ab, der angibt, ob das Steuerelement seinen Ansichtszustand über ID anstatt über den Index lädt.

(Geerbt von Control)
NamingContainer

Ruft einen Verweis auf den Benennungscontainer des Serversteuerelements ab, der einen eindeutigen Namespace erstellt, damit zwischen Serversteuerelementen mit demselben ID-Eigenschaftswert unterschieden werden kann.

(Geerbt von Control)
Page

Ruft einen Verweis auf die Page-Instanz ab, die das Serversteuerelement enthält.

(Geerbt von Control)
Parent

Ruft einen Verweis auf das übergeordnete Steuerelement des Serversteuerelements in der Steuerelementhierarchie der Seite ab.

(Geerbt von Control)
RenderingCompatibility

Ruft einen Wert ab, der die ASP.NET-Version angibt, mit der gerenderte HTML-Objekte kompatibel sind.

(Geerbt von Control)
ScrollBars

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

Site

Ruft Informationen zum Container ab, der das aktuelle Steuerelement hostet, wenn es auf einer Entwurfsoberfläche gerendert wird.

(Geerbt von Control)
SkinID

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

Style

Ruft eine Auflistung der Textattribute ab, die im äußeren Tag des Webserversteuerelements als Formatvorlagenattribut gerendert werden.

(Geerbt von WebControl)
SupportsDisabledAttribute

Ruft einen Wert ab, der angibt, ob vom Steuerelement das disabled-Attribut des gerenderten HTML-Elements auf "disabled" festgelegt werden soll, wenn die IsEnabled-Eigenschaft des Steuerelements false ist.

(Geerbt von Panel)
TabIndex

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

TagKey

Ruft den HtmlTextWriterTag-Wert ab, der diesem Webserversteuerelement entspricht. Diese Eigenschaft wird hauptsächlich von Steuerelemententwicklern verwendet.

(Geerbt von WebControl)
TagName

Ruft den Namen des Steuerelementtags ab. Diese Eigenschaft wird hauptsächlich von Steuerelemententwicklern verwendet.

(Geerbt von WebControl)
TemplateControl

Ruft einen Verweis auf die Vorlage ab, die dieses Steuerelement enthält, oder legt den Verweis fest.

(Geerbt von Control)
TemplateSourceDirectory

Ruft das virtuelle Verzeichnis der Page oder des UserControl ab, in dem das aktuelle Serversteuerelement enthalten ist.

(Geerbt von Control)
Title

Ruft den Titel ab, der in der Titelleiste des Steuerelements angezeigt wird, oder legt diesen fest.

ToolTip

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

UniqueID

Ruft den eindeutigen, hierarchisierten Bezeichner für das Serversteuerelement ab.

(Geerbt von Control)
ValidateRequestMode

Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob das Steuerelement Clienteingaben des Browser auf gefährliche Werte überprüft.

(Geerbt von Control)
ViewState

Ruft ein Wörterbuch mit Zustandsinformationen ab, mit dem Sie den Ansichtszustand eines Serversteuerelements über mehrere Anforderungen für dieselbe Seite hinweg speichern und wiederherstellen können.

(Geerbt von Control)
ViewStateIgnoresCase

Ruft einen Wert ab, der angibt, ob bei dem StateBag-Objekt die Groß- und Kleinschreibung nicht berücksichtigt wird.

(Geerbt von Control)
ViewStateMode

Ruft den Ansichtszustandsmodus des Steuerelements ab oder legt ihn fest.

(Geerbt von Control)
Visible

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

WebPartManager

Ruft einen Verweis auf die aktuelle Instanz der WebPartManager-Klasse ab.

(Geerbt von CatalogPart)
WebPartsListUserControlPath

Ruft den Pfad zu einem Benutzersteuerelement ab, das eine Liste der WebPart-Steuerelemente oder Serversteuerelemente für den Katalog enthält, oder legt diesen Pfad fest.

WebPartsTemplate

Ruft einen Verweis auf eine Vorlage ab, die die in einem Katalog deklarierten WebPart-Steuerelemente enthält, oder legt diesen fest.

Width

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

Wrap

Diese geerbte Eigenschaft wird vom DeclarativeCatalogPart-Steuerelement nicht verwendet. Die -Eigenschaft wird nur überschrieben, um zu verhindern, dass sie in Microsoft Visual Studio 2005-Designertools angezeigt wird.

Zone

Ruft einen Verweis auf die CatalogZoneBase-Zone ab, die ein CatalogPart-Steuerelement enthält.

(Geerbt von CatalogPart)

Methoden

AddAttributesToRender(HtmlTextWriter)

Fügt der Liste der darzustellenden Attribute Informationen über das Hintergrundbild, die Ausrichtung, den Umbruch und die Richtung hinzu.

(Geerbt von Panel)
AddedControl(Control, Int32)

Wird aufgerufen, nachdem ein untergeordnetes Steuerelement zur Controls-Auflistung des Control-Objekts hinzugefügt wurde.

(Geerbt von Control)
AddParsedSubObject(Object)

Benachrichtigt das Serversteuerelement, dass entweder ein XML-Element oder HTML-Element analysiert wurde, und fügt das Element dem ControlCollection-Objekt des Serversteuerelements hinzu.

(Geerbt von Control)
ApplyStyle(Style)

Kopiert alle nicht leeren Elemente der angegebenen Formatvorlage in das Websteuerelement und überschreibt hierbei alle vorhandenen Formatvorlagenelemente des Steuerelements. Diese Methode wird hauptsächlich von Steuerelemententwicklern verwendet.

(Geerbt von WebControl)
ApplyStyleSheetSkin(Page)

Übernimmt die im Stylesheet der Seite definierten Stileigenschaften für das Steuerelement.

(Geerbt von Control)
BeginRenderTracing(TextWriter, Object)

Startet die Entwurfszeitablaufverfolgung des Renderns von Daten.

(Geerbt von Control)
BuildProfileTree(String, Boolean)

Sammelt Informationen zum Serversteuerelement und übermittelt sie an die Trace-Eigenschaft, sodass diese angezeigt werden, wenn die Ablaufverfolgung für die Seite aktiviert ist.

(Geerbt von Control)
ClearCachedClientID()

Legt den zwischengespeicherten ClientID-Wert auf null fest.

(Geerbt von Control)
ClearChildControlState()

Löscht die Informationen zum Steuerelementzustand für die untergeordneten Steuerelemente des Serversteuerelements.

(Geerbt von Control)
ClearChildState()

Löscht die Informationen zum Ansichtszustand sowie zum Steuerelementzustand für alle untergeordneten Steuerelemente des Serversteuerelements.

(Geerbt von Control)
ClearChildViewState()

Löscht die Informationen über den Ansichtszustand für alle untergeordneten Steuerelemente des Serversteuerelements.

(Geerbt von Control)
ClearEffectiveClientIDMode()

Legt die ClientIDMode-Eigenschaft der aktuellen Steuerelementinstanz und aller untergeordneten Steuerelemente auf Inherit fest.

(Geerbt von Control)
CopyBaseAttributes(WebControl)

Kopiert die nicht vom Style-Objekt gekapselten Eigenschaften aus dem angegebenen Webserversteuerelement in das Webserversteuerelement, von dem aus diese Methode aufgerufen wird. Diese Methode wird hauptsächlich von Steuerelemententwicklern verwendet.

(Geerbt von WebControl)
CreateChildControls()

Wird durch das ASP.NET-Seitenframework aufgerufen, um Serversteuerelemente anzuweisen, die eine kompositionsbasierte Implementierung verwenden, um alle untergeordneten Steuerelemente zu erstellen, die sie in Vorbereitung auf ein Postback oder Rendering enthalten.

(Geerbt von Control)
CreateControlCollection()

Erstellt ein neues ControlCollection-Objekt, das die untergeordneten Steuerelemente (sowohl literale als auch Serversteuerelemente) des Serversteuerelements enthält.

(Geerbt von Control)
CreateControlStyle()

Erstellt ein Formatvorlagenobjekt, das vom Panel-Steuerelement intern zum Implementieren aller auf Formatvorlagen bezogenen Eigenschaften verwendet wird.

(Geerbt von Panel)
DataBind()

Bindet eine Datenquelle an das aufgerufene Serversteuerelement und alle untergeordneten Steuerelemente.

(Geerbt von Part)
DataBind(Boolean)

Bindet eine Datenquelle an das aufgerufene Serversteuerelement und alle untergeordneten Steuerelemente mit der Option, das DataBinding-Ereignis auszulösen.

(Geerbt von Control)
DataBindChildren()

Bindet eine Datenquelle an die untergeordneten Steuerelemente des Serversteuerelements.

(Geerbt von Control)
Dispose()

Ermöglicht es einem Serversteuerelement, die letzte Bereinigung durchzuführen, bevor es aus dem Speicher freigegeben wird.

(Geerbt von Control)
EndRenderTracing(TextWriter, Object)

Beendet die Entwurfszeitablaufverfolgung des Renderns von Daten.

(Geerbt von Control)
EnsureChildControls()

Stellt fest, ob das Serversteuerelement untergeordnete Steuerelemente enthält. Wenn das nicht der Fall ist, werden untergeordnete Steuerelemente erstellt.

(Geerbt von Control)
EnsureID()

Erstellt einen Bezeichner für Steuerelemente, die nicht über einen zugewiesenen Bezeichner verfügen.

(Geerbt von Control)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
FindControl(String)

Durchsucht den aktuellen Benennungscontainer nach dem angegebenen Serversteuerelement mit dem angegebenen id-Parameter.

(Geerbt von Control)
FindControl(String, Int32)

Durchsucht den aktuellen Benennungscontainer nach einem Serversteuerelement mit der angegebenen id und einer ganzen Zahl, die im pathOffset-Parameter angegeben ist, der die Suche unterstützt. Sie sollten diese Version der FindControl-Methode nicht überschreiben.

(Geerbt von Control)
Focus()

Legt den Eingabefokus auf ein Steuerelement fest.

(Geerbt von Control)
GetAvailableWebPartDescriptions()

Gibt eine Auflistung der Beschreibungen der verfügbaren WebPart-Steuerelemente in einem Katalog zurück.

GetDesignModeState()

Ruft den aktuellen Zustand einer übergeordneten Zone des CatalogPart-Steuerelements ab.

(Geerbt von CatalogPart)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetRouteUrl(Object)

Ruft die URL ab, die einem Satz von Routenparametern entspricht.

(Geerbt von Control)
GetRouteUrl(RouteValueDictionary)

Ruft die URL ab, die einem Satz von Routenparametern entspricht.

(Geerbt von Control)
GetRouteUrl(String, Object)

Ruft die URL ab, die einem Satz von Routenparametern und einem Routennamen entspricht.

(Geerbt von Control)
GetRouteUrl(String, RouteValueDictionary)

Ruft die URL ab, die einem Satz von Routenparametern und einem Routennamen entspricht.

(Geerbt von Control)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
GetUniqueIDRelativeTo(Control)

Gibt den mit einem Präfix versehenen Abschnitt der UniqueID-Eigenschaft des angegebenen Steuerelements zurück.

(Geerbt von Control)
GetWebPart(WebPartDescription)

Gibt einen Verweis auf ein WebPart-Steuerelement auf der Basis des an die Methode übergebenen Werts der Beschreibung zurück.

HasControls()

Ermittelt, ob das Serversteuerelement untergeordnete Steuerelemente enthält.

(Geerbt von Control)
HasEvents()

Gibt einen Wert zurück, der angibt, ob Ereignisse für das Steuerelement oder für untergeordnete Steuerelemente registriert werden.

(Geerbt von Control)
IsLiteralContent()

Ermittelt, ob das Serversteuerelement nur literalen Inhalt enthält.

(Geerbt von Control)
LoadControlState(Object)

Stellt die Informationen zum Steuerelementzustand aus einer früheren Seitenanforderung wieder her, die durch die SaveControlState()-Methode gespeichert wurden.

(Geerbt von Control)
LoadViewState(Object)

Stellt Ansichtszustandsinformationen von einer vorherigen Anforderung wieder her, die mit der SaveViewState()-Methode gespeichert wurde.

(Geerbt von WebControl)
MapPathSecure(String)

Ruft den physikalischen Pfad ab, auf den ein absoluter bzw. relativer virtueller Pfad verweist.

(Geerbt von Control)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
MergeStyle(Style)

Kopiert alle nicht leeren Elemente der angegebenen Formatvorlage in das Websteuerelement, überschreibt jedoch keine vorhandenen Formatvorlagenelemente des Steuerelements. Diese Methode wird hauptsächlich von Steuerelemententwicklern verwendet.

(Geerbt von WebControl)
OnBubbleEvent(Object, EventArgs)

Bestimmt, ob das Ereignis für das Serversteuerelement in der UI-Serversteuerelementhierarchie der Seite nach oben übergeben wird.

(Geerbt von Control)
OnDataBinding(EventArgs)

Löst das DataBinding-Ereignis aus.

(Geerbt von Control)
OnInit(EventArgs)

Löst das Init-Ereignis aus.

(Geerbt von Control)
OnLoad(EventArgs)

Löst das Load-Ereignis aus.

(Geerbt von Control)
OnPreRender(EventArgs)

Löst das PreRender-Ereignis aus.

(Geerbt von CatalogPart)
OnUnload(EventArgs)

Löst das Unload-Ereignis aus.

(Geerbt von Control)
OpenFile(String)

Ruft einen Stream zum Lesen einer Datei ab.

(Geerbt von Control)
RaiseBubbleEvent(Object, EventArgs)

Weist dem übergeordneten Element des Steuerelements alle Ereignisquellen und zugehörige Informationen zu.

(Geerbt von Control)
RemovedControl(Control)

Wird aufgerufen, nachdem ein untergeordnetes Steuerelement aus der Controls-Auflistung des Control-Objekts entfernt wurde.

(Geerbt von Control)
Render(HtmlTextWriter)

Rendert das Steuerelement im angegebenen HTML-Writer.

(Geerbt von WebControl)
RenderBeginTag(HtmlTextWriter)

Gibt das öffnende HTML-Tag des Panel-Steuerelements im angegebenen Writer wieder.

(Geerbt von Panel)
RenderChildren(HtmlTextWriter)

Gibt den Inhalt der untergeordneten Elemente eines Serversteuerelements an ein bereitgestelltes HtmlTextWriter-Objekt aus, das den auf dem Client zu rendernden Inhalt schreibt.

(Geerbt von Control)
RenderContents(HtmlTextWriter)

Rendert den Inhalt des Steuerelements im angegebenen Writer. Diese Methode wird hauptsächlich von Steuerelemententwicklern verwendet.

(Geerbt von WebControl)
RenderControl(HtmlTextWriter)

Gibt Inhalte von Serversteuerelementen an ein bereitgestelltes HtmlTextWriter-Objekt aus und speichert Ablaufverfolgungsinformationen zum Steuerelement, sofern die Ablaufverfolgung aktiviert ist.

(Geerbt von Control)
RenderControl(HtmlTextWriter, ControlAdapter)

Gibt Inhalte von Serversteuerelementen mithilfe eines bereitgestellten HtmlTextWriter-Objekts an ein bereitgestelltes ControlAdapter-Objekt aus.

(Geerbt von Control)
RenderEndTag(HtmlTextWriter)

Gibt das schließende HTML-Tag des Panel-Steuerelements im angegebenen Writer wieder.

(Geerbt von Panel)
ResolveAdapter()

Ruft den Steuerelementadapter ab, der für das Rendern des angegebenen Steuerelements verantwortlich ist.

(Geerbt von Control)
ResolveClientUrl(String)

Ruft eine URL ab, die vom Browser verwendet werden kann.

(Geerbt von Control)
ResolveUrl(String)

Konvertiert eine URL in eine vom anfordernden Client verwendbare URL.

(Geerbt von Control)
SaveControlState()

Speichert alle Zustandsänderungen des Serversteuerelements, die seit dem Zeitpunkt aufgetreten sind, zu dem die Seite an den Server zurückgesendet wurde.

(Geerbt von Control)
SaveViewState()

Speichert jeden Zustand, der nach dem Aufrufen der TrackViewState()-Methode geändert wurde.

(Geerbt von WebControl)
SetDesignModeState(IDictionary)

Legt die Entwurfszeitdaten für ein Steuerelement fest.

(Geerbt von CatalogPart)
SetRenderMethodDelegate(RenderMethod)

Beauftragt einen Ereignishandlerdelegaten, das Serversteuerelement und seinen Inhalt im übergeordneten Steuerelement zu rendern.

(Geerbt von Control)
SetTraceData(Object, Object)

Legt Ablaufverfolgungsdaten für die Nachverfolgung der Entwurfszeit von Rendering-Daten mithilfe des Ablaufverfolgungsdatenschlüssels und Ablaufverfolgungsdatenwerts fest.

(Geerbt von Control)
SetTraceData(Object, Object, Object)

Legt Ablaufverfolgungsdaten für die Nachverfolgung der Entwurfszeit von Rendering-Daten mithilfe des verfolgten Objekts, des Ablaufverfolgungsdatenschlüssels und Ablaufverfolgungsdatenwerts fest.

(Geerbt von Control)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
TrackViewState()

Bewirkt, dass das Steuerelement Änderungen an seinem Ansichtszustand in der ViewState-Eigenschaft des Objekts nachverfolgt.

(Geerbt von WebControl)

Ereignisse

DataBinding

Tritt ein, wenn das Serversteuerelement eine Bindung an eine Datenquelle durchführt.

(Geerbt von Control)
Disposed

Tritt ein, wenn ein Serversteuerelement im Speicher freigegeben wird. Dies ist die letzte Stufe des Lebenszyklus des Serversteuerelements bei der Anforderung einer ASP.NET-Seite.

(Geerbt von Control)
Init

Tritt bei der Initialisierung des Serversteuerelements ein. Dies ist der erste Schritt in dessen Lebenszyklus.

(Geerbt von Control)
Load

Tritt ein, wenn das Serversteuerelement in das Page-Objekt geladen wird.

(Geerbt von Control)
PreRender

Tritt nach dem Laden des Control-Objekts, jedoch vor dem Rendern ein.

(Geerbt von Control)
Unload

Tritt ein, wenn das Serversteuerelement aus dem Speicher entladen wird.

(Geerbt von Control)

Explizite Schnittstellenimplementierungen

IAttributeAccessor.GetAttribute(String)

Ruft ein Attribut des Websteuerelements mit dem angegebenen Namen ab.

(Geerbt von WebControl)
IAttributeAccessor.SetAttribute(String, String)

Legt zum angegebenen Namen und Wert ein Attribut des Websteuerelements fest.

(Geerbt von WebControl)
ICompositeControlDesignerAccessor.RecreateChildControls()

Ermöglicht es dem Entwickler eines Designers für ein zusammengesetztes Teilsteuerelement, die untergeordneten Steuerelemente des Steuerelements auf der Entwurfsoberfläche erneut zu erstellen.

(Geerbt von Part)
IControlBuilderAccessor.ControlBuilder

Eine Beschreibung dieses Elements finden Sie unter ControlBuilder.

(Geerbt von Control)
IControlDesignerAccessor.GetDesignModeState()

Eine Beschreibung dieses Elements finden Sie unter GetDesignModeState().

(Geerbt von Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

Eine Beschreibung dieses Elements finden Sie unter SetDesignModeState(IDictionary).

(Geerbt von Control)
IControlDesignerAccessor.SetOwnerControl(Control)

Eine Beschreibung dieses Elements finden Sie unter SetOwnerControl(Control).

(Geerbt von Control)
IControlDesignerAccessor.UserData

Eine Beschreibung dieses Elements finden Sie unter UserData.

(Geerbt von Control)
IDataBindingsAccessor.DataBindings

Eine Beschreibung dieses Elements finden Sie unter DataBindings.

(Geerbt von Control)
IDataBindingsAccessor.HasDataBindings

Eine Beschreibung dieses Elements finden Sie unter HasDataBindings.

(Geerbt von Control)
IExpressionsAccessor.Expressions

Eine Beschreibung dieses Elements finden Sie unter Expressions.

(Geerbt von Control)
IExpressionsAccessor.HasExpressions

Eine Beschreibung dieses Elements finden Sie unter HasExpressions.

(Geerbt von Control)
IParserAccessor.AddParsedSubObject(Object)

Eine Beschreibung dieses Elements finden Sie unter AddParsedSubObject(Object).

(Geerbt von Control)

Erweiterungsmethoden

FindDataSourceControl(Control)

Gibt die Datenquelle zurück, die dem Datensteuerelement für das angegebene Steuerelement zugeordnet ist.

FindFieldTemplate(Control, String)

Gibt die Feldvorlage für die angegebene Spalte im Benennungscontainer des angegebenen Steuerelements zurück.

FindMetaTable(Control)

Gibt das Metatabellenobjekt für das enthaltende Datensteuerelement zurück.

GetDefaultValues(INamingContainer)

Ruft die Auflistung der Standardwerte für das angegebene Datensteuerelement ab.

GetMetaTable(INamingContainer)

Ruft die Tabellenmetadaten für das angegebene Datensteuerelement ab.

SetMetaTable(INamingContainer, MetaTable)

Legt die Tabellenmetadaten für das angegebene Datensteuerelement fest.

SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>)

Legt die Zuordnung für Tabellenmetadaten und Standardwerte für das angegebene Datensteuerelement fest.

SetMetaTable(INamingContainer, MetaTable, Object)

Legt die Zuordnung für Tabellenmetadaten und Standardwerte für das angegebene Datensteuerelement fest.

TryGetMetaTable(INamingContainer, MetaTable)

Bestimmt, ob Tabellenmetadaten verfügbar sind.

EnableDynamicData(INamingContainer, Type)

Aktiviert das Verhalten dynamischer Daten für das angegebene Datensteuerelement

EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>)

Aktiviert das Verhalten dynamischer Daten für das angegebene Datensteuerelement

EnableDynamicData(INamingContainer, Type, Object)

Aktiviert das Verhalten dynamischer Daten für das angegebene Datensteuerelement

Gilt für:

Weitere Informationen