Поделиться через


PageCatalogPart Класс

Определение

Предоставляет каталог, который сохраняет ссылки на все WebPart элементы управления (и другие серверные элементы управления, содержащиеся в WebPartZoneBase зонах), который пользователь закрыл на одной странице веб-частей, что позволяет пользователям добавлять закрытые элементы управления обратно на страницу. Этот класс не может быть унаследован.

public ref class PageCatalogPart sealed : System::Web::UI::WebControls::WebParts::CatalogPart
public sealed class PageCatalogPart : System.Web.UI.WebControls.WebParts.CatalogPart
type PageCatalogPart = class
    inherit CatalogPart
Public NotInheritable Class PageCatalogPart
Inherits CatalogPart
Наследование

Примеры

В следующем примере кода показано, как использовать PageCatalogPart элемент управления декларативно на веб-странице. В этом примере есть четыре части:

  • Пользовательский элемент управления, позволяющий изменять режимы отображения на странице веб-частей.

  • Веб-страница, содержащая CatalogZone элемент управления, PageCatalogPart элемент управления и DeclarativeCatalogPart элемент управления.

  • Файл исходного кода, содержащий два пользовательских WebPart элемента управления.

  • Описание работы примера при загрузке страницы в браузере.

Первая часть этого примера кода — это пользовательский элемент управления, позволяющий пользователям изменять режимы отображения на веб-странице. Дополнительные сведения о режимах отображения и описании исходного кода в этом элементе управления см. в пошаговом руководстве. Изменение режимов отображения на странице веб-частей.

<%@ 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>

Второй частью примера кода является веб-страница. В верхней части страницы находятся две register директивы, одна для пользовательского элемента управления и одна для скомпилированного компонента, содержащего два пользовательских WebPart элемента управления. Обратите внимание, что страница имеет декларативную ссылку на PageCatalogPart элемент управления, вложенную в соответствующую иерархию декларативных элементов, как описано в разделе "Примечания" этого раздела. Существует также элемент, содержащий ссылки на стандартный <asp:declarativecatalogpart> элемент управления ASP.NET Calendar и два пользовательских WebPart элемента управления, все из которых являются элементами управления, которые пользователи могут выбрать из каталога.

<%@ 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>
      PageCatalogPart 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:PageCatalogPart ID="PageCatalogPart1" runat="server" 
            Title="My Page Catalog" 
            ChromeType="Titleonly" />
          <asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"  
            runat="server" 
            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>
    </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 id="Head1" runat="server">
    <title>
      PageCatalogPart 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:PageCatalogPart ID="PageCatalogPart1" runat="server" 
            Title="My Page Catalog" 
            ChromeType="TitleOnly" />
          <asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"  
            runat="server" 
            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>
    </form>
  </body>
</html>

Третья часть примера кода — исходный код для двух WebPart элементов управления. Для запуска примера кода необходимо скомпилировать этот исходный код. Вы можете скомпилировать его явным образом и поместить полученную сборку в папку bin веб-сайта или глобальный кэш сборок. Кроме того, исходный код можно поместить в папку App_Code сайта, где он будет динамически скомпилирован во время выполнения. Пошаговое руководство, демонстрирующее оба метода компиляции, см. в пошаговом руководстве по разработке и использованию пользовательского веб-сервера.

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

При загрузке страницы в браузере выберите режим каталога в раскрывающемся списке "Режим отображения ", чтобы переключиться в режим каталога. В режиме каталога можно увидеть элементы управления, доступные для добавления на страницу. Добавьте один из элементов управления, а затем используйте раскрывающийся список режима отображения , чтобы вернуть страницу для просмотра. Щелкните меню команд (стрелка вниз) в строке заголовка одного из элементов управления и нажмите кнопку "Закрыть ", чтобы закрыть элемент управления. Верните страницу в режим каталога и обратите внимание, что элемент управления, закрытый теперь отображается в каталоге страниц и доступен для добавления обратно на страницу.

Комментарии

Класс PageCatalogPart служит одной из очень конкретных целей на странице веб-частей: он выступает в качестве каталога страниц для поддержания всех элементов управления, ранее добавленных на страницу, которая была закрыта пользователем, чтобы пользователь смог добавить их обратно на страницу. Этот элемент управления отображается только в том случае, если веб-страница находится в режиме отображения каталога, специальное представление, позволяющее пользователям добавлять и удалять элементы управления на странице. PageCatalogPart Добавьте элемент управления на страницу, если вы хотите предоставить пользователям гибкость закрытия и повторного открытия элементов управления. Если страница не позволяет пользователям закрывать элементы управления вообще, не нужно добавлять PageCatalogPart элемент управления на страницу.

В каталог страниц добавляются только закрытые элементы управления. Закрытый элемент управления имеет несколько атрибутов:

  • Он не отображается на странице.

  • Он не отображается на странице.

  • Он не участвует в этапах жизненного цикла страницы.

Закрытие элемента управления отличается от удаления, которое окончательно удаляет его из страницы. Пользователь может повторно открыть экземпляр закрытого элемента управления из каталога страниц, но после удаления пользователя элемента управления он никогда не сможет восстановить этот конкретный экземпляр.

Наиболее распространенный и удобный способ добавления PageCatalogPart элемента управления на страницу заключается в объявлении его в формате сохраняемости страниц. Как и в случае с любым декларативным CatalogPart элементом управления, PageCatalogPart элемент управления должен быть объявлен в соответствующем контексте элементов разметки ASP.NET на веб-странице. Пример рабочего кода объявления PageCatalogPart элемента управления на веб-странице см. в разделе "Пример" этого раздела. На страницу необходимо добавить следующую последовательность декларативных элементов:

  1. Элемент <asp:catalogzone> должен быть объявлен, а дочерний <zonetemplate> элемент должен быть добавлен в него, чтобы содержать элементы CatalogPart управления, объявленные в зоне.

  2. Элемент <asp:pagecatalogpart> должен быть добавлен как дочерний <zonetemplate> элемент элемента. Также могут быть другие CatalogPart элементы управления, объявленные как дочерние элементы <zonetemplate> элемента, включая DeclarativeCatalogPart или ImportCatalogPart элементы управления.

Класс PageCatalogPart имеет только одно полезное свойство, Title свойство, которое переопределяет базовое свойство, чтобы заголовок по умолчанию можно было указать для каталога страниц, если значение не задано.

Остальные свойства класса PageCatalogPart переопределяют унаследованные свойства, но на самом деле не используются для отрисовки элемента управления. Они переопределяются только таким образом, чтобы специальные атрибуты кода могли быть установлены для их скрытия от средств разработки, таких как Microsoft Visual Studio 2005. Эти скрытые свойства не следует использовать, так как они не влияют на отрисовку. Тот факт, что они скрыты от IntelliSense и области свойств в Visual Studio, помогают разработчикам избегать их использования по ошибке. Все эти скрытые свойства отмечены как таковые в соответствующих разделах справки.

Класс PageCatalogPart также имеет несколько важных методов. Метод GetAvailableWebPartDescriptions извлекает WebPartDescription объект для каждого WebPart элемента управления в каталоге страниц, что позволяет PageCatalogPart элементу управления отображать сведения о каждом серверном элементе управления без необходимости создавать экземпляр этого элемента управления. Другим методом GetWebPart является метод. Этот метод получает экземпляр определенного WebPart элемента управления на основе описания, переданного методу.

Доступность

Разметка, отображаемая по умолчанию для этого элемента управления, может не соответствовать стандартам специальных возможностей, таким как рекомендации по специальным возможностям веб-содержимого 1.0 (WCAG) приоритет 1. Дополнительные сведения о поддержке специальных возможностей для этого элемента управления см. в ASP.NET элементах управления и специальных возможностях.

Конструкторы

Имя Описание
PageCatalogPart()

Инициализирует новый экземпляр класса .

Свойства

Имя Описание
AccessKey

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

Adapter

Возвращает адаптер, зависящий от браузера, для элемента управления.

(Унаследовано от Control)
AppRelativeTemplateSourceDirectory

Возвращает или задает относительный к приложению виртуальный каталог Page объекта или UserControl объекта, содержащего этот элемент управления.

(Унаследовано от Control)
Attributes

Возвращает коллекцию произвольных атрибутов (только для отрисовки), которые не соответствуют свойствам элемента управления.

(Унаследовано от WebControl)
BackColor

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

BackImageUrl

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

BindingContainer

Возвращает элемент управления, содержащий привязку данных этого элемента управления.

(Унаследовано от Control)
BorderColor

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

BorderStyle

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

BorderWidth

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

ChildControlsCreated

Возвращает значение, указывающее, были ли созданы дочерние элементы управления сервера.

(Унаследовано от Control)
ChromeState

Возвращает или задает, находится ли элемент управления частью в свернутом или обычном состоянии.

(Унаследовано от Part)
ChromeType

Возвращает или задает тип границы, которая кадривает элемент управления веб-частей.

(Унаследовано от Part)
ClientID

Возвращает идентификатор элемента управления для разметки HTML, созданной ASP.NET.

(Унаследовано от Control)
ClientIDMode

Возвращает или задает алгоритм, используемый для создания значения ClientID свойства.

(Унаследовано от Control)
ClientIDSeparator

Возвращает значение символа, представляющее символ разделителя, используемый в свойстве ClientID .

(Унаследовано от Control)
Context

HttpContext Возвращает объект, связанный с серверным элементом управления для текущего веб-запроса.

(Унаследовано от Control)
Controls

ControlCollection Возвращает объект, содержащий дочерние элементы управления для указанного серверного элемента управления в иерархии пользовательского интерфейса.

(Унаследовано от Part)
ControlStyle

Возвращает стиль элемента управления веб-сервера. Это свойство используется главным образом разработчиками элементов управления.

(Унаследовано от WebControl)
ControlStyleCreated

Возвращает значение, указывающее, был ли Style объект создан для ControlStyle свойства. Это свойство в основном используется разработчиками элементов управления.

(Унаследовано от WebControl)
CssClass

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

DataItemContainer

Возвращает ссылку на контейнер именования, если контейнер именования реализует IDataItemContainer.

(Унаследовано от Control)
DataKeysContainer

Возвращает ссылку на контейнер именования, если контейнер именования реализует IDataKeysControl.

(Унаследовано от Control)
DefaultButton

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

Description

Получает или задает краткую фразу, которая суммирует то, что делает элемент управления частью, для использования в подсказках и каталогах элементов управления частью.

(Унаследовано от Part)
DesignMode

Возвращает значение, указывающее, используется ли элемент управления на поверхности конструктора.

(Унаследовано от Control)
Direction

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

DisplayTitle

Возвращает строку, содержащую фактическое текущее название CatalogPart элемента управления.

(Унаследовано от CatalogPart)
Enabled

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

EnableTheming

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

EnableViewState

Возвращает или задает значение, указывающее, сохраняет ли серверный элемент управления состояние представления и состояние представления всех дочерних элементов управления, содержащихся в нем, для запрашивающего клиента.

(Унаследовано от Control)
Events

Возвращает список делегатов обработчика событий для элемента управления. Это свойство доступно только для чтения.

(Унаследовано от Control)
Font

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

ForeColor

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

GroupingText

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

HasAttributes

Возвращает значение, указывающее, имеет ли элемент управления набор атрибутов.

(Унаследовано от WebControl)
HasChildViewState

Получает значение, указывающее, имеют ли дочерние элементы управления текущего элемента управления серверным элементом управления какие-либо сохраненные параметры состояния представления.

(Унаследовано от Control)
Height

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

HorizontalAlign

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

ID

Возвращает или задает программный идентификатор, назначенный элементу управления сервером.

(Унаследовано от Control)
IdSeparator

Возвращает символ, используемый для разделения идентификаторов элемента управления.

(Унаследовано от Control)
IsChildControlStateCleared

Возвращает значение, указывающее, имеют ли элементы управления, содержащиеся в этом элементе управления, состояние элемента управления.

(Унаследовано от Control)
IsEnabled

Возвращает значение, указывающее, включен ли элемент управления.

(Унаследовано от WebControl)
IsTrackingViewState

Возвращает значение, указывающее, сохраняется ли серверная система управления изменениями в состоянии представления.

(Унаследовано от Control)
IsViewStateEnabled

Возвращает значение, указывающее, включено ли состояние представления для этого элемента управления.

(Унаследовано от Control)
LoadViewStateByID

Возвращает значение, указывающее, участвует ли элемент управления в загрузке состояния ID представления вместо индекса.

(Унаследовано от Control)
NamingContainer

Возвращает ссылку на контейнер именования серверного элемента управления, который создает уникальное пространство имен для различения между элементами управления сервера с ID одинаковым значением свойства.

(Унаследовано от Control)
Page

Возвращает ссылку на Page экземпляр, содержащий серверный элемент управления.

(Унаследовано от Control)
Parent

Возвращает ссылку на родительский элемент управления сервера в иерархии элементов управления страницами.

(Унаследовано от Control)
RenderingCompatibility

Возвращает значение, указывающее версию ASP.NET, с которым будет совместим отрисованный HTML.

(Унаследовано от Control)
ScrollBars

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

Site

Получает сведения о контейнере, на котором размещается текущий элемент управления при отрисовки на поверхности конструктора.

(Унаследовано от Control)
SkinID

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

Style

Возвращает коллекцию текстовых атрибутов, которые будут отображаться как атрибут стиля во внешнем теге элемента управления веб-сервера.

(Унаследовано от WebControl)
SupportsDisabledAttribute

Возвращает значение, указывающее, должен ли элемент управления задать disabled атрибут отрисованного HTML-элемента значение "отключено" при наличии falseсвойства элемента управленияIsEnabled.

(Унаследовано от Panel)
TabIndex

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

TagKey

Возвращает значение, соответствующее HtmlTextWriterTag этому элементу управления веб-сервера. Это свойство используется главным образом разработчиками элементов управления.

(Унаследовано от WebControl)
TagName

Возвращает имя тега элемента управления. Это свойство используется главным образом разработчиками элементов управления.

(Унаследовано от WebControl)
TemplateControl

Возвращает или задает ссылку на шаблон, содержащий этот элемент управления.

(Унаследовано от Control)
TemplateSourceDirectory

Возвращает виртуальный Page каталог или UserControl содержащий текущий серверный элемент управления.

(Унаследовано от Control)
Title

Возвращает или задает заголовок, отображаемый в строке заголовка элемента управления.

ToolTip

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

UniqueID

Возвращает уникальный иерархический идентификатор для элемента управления сервером.

(Унаследовано от Control)
ValidateRequestMode

Возвращает или задает значение, указывающее, проверяет ли элемент управления входные данные клиента из браузера для потенциально опасных значений.

(Унаследовано от Control)
ViewState

Получает словарь сведений о состоянии, позволяющий сохранять и восстанавливать состояние представления серверного элемента управления в нескольких запросах на одну и ту же страницу.

(Унаследовано от Control)
ViewStateIgnoresCase

Возвращает значение, указывающее, является ли StateBag объект нечувствительным к регистру.

(Унаследовано от Control)
ViewStateMode

Возвращает или задает режим состояния представления этого элемента управления.

(Унаследовано от Control)
Visible

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

WebPartManager

Возвращает ссылку на текущий экземпляр WebPartManager класса.

(Унаследовано от CatalogPart)
Width

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

Wrap

Это унаследованное свойство не используется набором элементов управления веб-частей при отрисовке PageCatalogPart элемента управления. Свойство переопределяется только для предотвращения его появления в средствах конструктора Microsoft Visual Studio 2005.

Zone

Возвращает ссылку на CatalogZoneBase зону, содержащую CatalogPart элемент управления.

(Унаследовано от CatalogPart)

Методы

Имя Описание
AddAttributesToRender(HtmlTextWriter)

Добавляет сведения о фоновом изображении, выравнивании, оболочке и направлении в список атрибутов для отрисовки.

(Унаследовано от Panel)
AddedControl(Control, Int32)

Вызывается после добавления дочернего Control элемента управления в Controls коллекцию объекта.

(Унаследовано от Control)
AddParsedSubObject(Object)

Уведомляет серверный элемент управления о том, что элемент , XML или HTML, был проанализирован, и добавляет элемент в объект элемента управления ControlCollection сервера.

(Унаследовано от Control)
ApplyStyle(Style)

Копирует все небланковые элементы указанного стиля в веб-элемент управления, перезаписыв все существующие элементы стиля элемента управления. Этот метод в основном используется разработчиками элементов управления.

(Унаследовано от WebControl)
ApplyStyleSheetSkin(Page)

Применяет свойства стиля, определенные в таблице стилей страницы, к элементу управления.

(Унаследовано от Control)
BeginRenderTracing(TextWriter, Object)

Начинает трассировку данных отрисовки во время разработки.

(Унаследовано от Control)
BuildProfileTree(String, Boolean)

Собирает сведения о серверном элементе управления и передает его Trace свойству, которое будет отображаться при включении трассировки для страницы.

(Унаследовано от Control)
ClearCachedClientID()

Задает кэшированное ClientID значение null.

(Унаследовано от Control)
ClearChildControlState()

Удаляет сведения о состоянии элемента управления для дочерних элементов управления сервера.

(Унаследовано от Control)
ClearChildState()

Удаляет сведения о состоянии представления и состояния элемента управления для всех дочерних элементов управления сервера.

(Унаследовано от Control)
ClearChildViewState()

Удаляет сведения о состоянии представления для всех дочерних элементов управления сервера.

(Унаследовано от Control)
ClearEffectiveClientIDMode()

ClientIDMode Задает свойство текущего экземпляра элемента управления и всех дочерних элементов управленияInherit.

(Унаследовано от Control)
CopyBaseAttributes(WebControl)

Копирует свойства, не инкапсулированные Style объектом из указанного элемента управления веб-сервера, в элемент управления веб-сервера, из который вызывается этот метод. Этот метод используется главным образом разработчиками элементов управления.

(Унаследовано от WebControl)
CreateChildControls()

Вызывается платформой страницы ASP.NET, чтобы уведомить серверные элементы управления, использующие реализацию на основе композиции, чтобы создать все дочерние элементы управления, содержащиеся в подготовке к публикации обратной или отрисовки.

(Унаследовано от Control)
CreateControlCollection()

Создает новый ControlCollection объект для хранения дочерних элементов управления (как литерала, так и сервера) элемента управления сервером.

(Унаследовано от Control)
CreateControlStyle()

Создает объект стиля, который используется внутри Panel элемента управления для реализации всех свойств, связанных со стилем.

(Унаследовано от Panel)
DataBind()

Привязывает источник данных к вызываемой серверной системе управления и всем дочерним элементам управления.

(Унаследовано от Part)
DataBind(Boolean)

Привязывает источник данных к вызываемой серверной системе управления и всем его дочерним элементам управления с возможностью вызвать DataBinding событие.

(Унаследовано от Control)
DataBindChildren()

Привязывает источник данных к дочерним элементам управления сервера.

(Унаследовано от Control)
Dispose()

Позволяет элементу управления сервера выполнять окончательную очистку перед освобождением из памяти.

(Унаследовано от Control)
EndRenderTracing(TextWriter, Object)

Завершает трассировку времени разработки данных отрисовки.

(Унаследовано от Control)
EnsureChildControls()

Определяет, содержит ли серверный элемент управления дочерние элементы управления. Если это не так, он создает дочерние элементы управления.

(Унаследовано от Control)
EnsureID()

Создает идентификатор для элементов управления, которым не назначен идентификатор.

(Унаследовано от Control)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
FindControl(String, Int32)

Выполняет поиск текущего контейнера именования для элемента управления сервером с указанным id и целым числом, указанным в pathOffset параметре, который помогает в поиске. Эту версию FindControl метода не следует переопределять.

(Унаследовано от Control)
FindControl(String)

Выполняет поиск текущего контейнера именования для элемента управления сервером с указанным id параметром.

(Унаследовано от Control)
Focus()

Задает фокус ввода элементу управления.

(Унаследовано от Control)
GetAvailableWebPartDescriptions()

Возвращает коллекцию описаний доступных WebPart элементов управления в каталоге.

GetDesignModeState()

Извлекает текущее состояние родительской CatalogPart зоны элемента управления.

(Унаследовано от CatalogPart)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetRouteUrl(Object)

Возвращает URL-адрес, соответствующий набору параметров маршрута.

(Унаследовано от Control)
GetRouteUrl(RouteValueDictionary)

Возвращает URL-адрес, соответствующий набору параметров маршрута.

(Унаследовано от Control)
GetRouteUrl(String, Object)

Получает URL-адрес, соответствующий набору параметров маршрута и имени маршрута.

(Унаследовано от Control)
GetRouteUrl(String, RouteValueDictionary)

Получает URL-адрес, соответствующий набору параметров маршрута и имени маршрута.

(Унаследовано от Control)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
GetUniqueIDRelativeTo(Control)

Возвращает префиксированную часть UniqueID свойства указанного элемента управления.

(Унаследовано от Control)
GetWebPart(WebPartDescription)

Возвращает ссылку на WebPart элемент управления на основе значения описания, переданного в метод.

HasControls()

Определяет, содержит ли серверный элемент управления какие-либо дочерние элементы управления.

(Унаследовано от Control)
HasEvents()

Возвращает значение, указывающее, регистрируются ли события для элемента управления или любых дочерних элементов управления.

(Унаследовано от Control)
IsLiteralContent()

Определяет, содержит ли серверный элемент управления только литеральное содержимое.

(Унаследовано от Control)
LoadControlState(Object)

Восстанавливает сведения о состоянии элемента управления из предыдущего запроса страницы, сохраненного методом SaveControlState() .

(Унаследовано от Control)
LoadViewState(Object)

Восстанавливает сведения о состоянии представления из предыдущего запроса, сохраненного SaveViewState() с помощью метода.

(Унаследовано от WebControl)
MapPathSecure(String)

Извлекает физический путь, с которым сопоставляется виртуальный путь( абсолютный или относительный).

(Унаследовано от Control)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
MergeStyle(Style)

Копирует все небланковые элементы указанного стиля в веб-элемент управления, но не перезаписывает существующие элементы стиля элемента управления. Этот метод используется главным образом разработчиками элементов управления.

(Унаследовано от WebControl)
OnBubbleEvent(Object, EventArgs)

Определяет, передается ли событие для элемента управления сервером пользовательского интерфейса страницы.

(Унаследовано от Control)
OnDataBinding(EventArgs)

Вызывает событие DataBinding.

(Унаследовано от Control)
OnInit(EventArgs)

Вызывает событие Init.

(Унаследовано от Control)
OnLoad(EventArgs)

Вызывает событие Load.

(Унаследовано от Control)
OnPreRender(EventArgs)

Вызывает событие PreRender.

(Унаследовано от CatalogPart)
OnUnload(EventArgs)

Вызывает событие Unload.

(Унаследовано от Control)
OpenFile(String)

Возвращает используемый Stream для чтения файла.

(Унаследовано от Control)
RaiseBubbleEvent(Object, EventArgs)

Назначает любые источники события и ее сведения родительскому элементу управления.

(Унаследовано от Control)
RemovedControl(Control)

Вызывается после удаления дочернего Control элемента управления из Controls коллекции объекта.

(Унаследовано от Control)
Render(HtmlTextWriter)

Отрисовывает элемент управления в указанный модуль записи HTML.

(Унаследовано от WebControl)
RenderBeginTag(HtmlTextWriter)

Отрисовывает HTML-тег открывающего элемента Panel управления указанному средству записи.

(Унаследовано от Panel)
RenderChildren(HtmlTextWriter)

Выводит содержимое дочерних элементов управления сервера в предоставленный HtmlTextWriter объект, который записывает содержимое для отрисовки на клиенте.

(Унаследовано от Control)
RenderContents(HtmlTextWriter)

Отрисовывает содержимое элемента управления указанному средству записи. Этот метод используется главным образом разработчиками элементов управления.

(Унаследовано от WebControl)
RenderControl(HtmlTextWriter, ControlAdapter)

Выводит содержимое элемента управления сервером в предоставленный HtmlTextWriter объект с помощью предоставленного ControlAdapter объекта.

(Унаследовано от Control)
RenderControl(HtmlTextWriter)

Выводит содержимое сервера управления в предоставленный HtmlTextWriter объект и сохраняет сведения о трассировке элемента управления, если трассировка включена.

(Унаследовано от Control)
RenderEndTag(HtmlTextWriter)

Отрисовывает html-закрывающий тег Panel элемента управления в указанный модуль записи.

(Унаследовано от Panel)
ResolveAdapter()

Возвращает адаптер управления, отвечающий за отрисовку указанного элемента управления.

(Унаследовано от Control)
ResolveClientUrl(String)

Получает URL-адрес, который может использоваться браузером.

(Унаследовано от Control)
ResolveUrl(String)

Преобразует URL-адрес в url-адрес, который можно использовать на запрашиваемом клиенте.

(Унаследовано от Control)
SaveControlState()

Сохраняет все изменения состояния управления сервером, которые произошли с момента публикации страницы на сервер.

(Унаследовано от Control)
SaveViewState()

Сохраняет любое состояние, измененное после TrackViewState() вызова метода.

(Унаследовано от WebControl)
SetDesignModeState(IDictionary)

Задает данные во время разработки для элемента управления.

(Унаследовано от CatalogPart)
SetRenderMethodDelegate(RenderMethod)

Назначает делегат обработчика событий для отрисовки элемента управления сервером и его содержимого в родительский элемент управления.

(Унаследовано от Control)
SetTraceData(Object, Object, Object)

Задает данные трассировки для трассировки данных отрисовки во время разработки, используя объект трассировки, ключ данных трассировки и значение данных трассировки.

(Унаследовано от Control)
SetTraceData(Object, Object)

Задает данные трассировки для трассировки данных отрисовки во время разработки, используя ключ данных трассировки и значение данных трассировки.

(Унаследовано от Control)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
TrackViewState()

Позволяет элементу управления отслеживать изменения состояния представления, чтобы они могли храниться в свойстве объекта ViewState .

(Унаследовано от WebControl)

События

Имя Описание
DataBinding

Происходит, когда серверный элемент управления привязывается к источнику данных.

(Унаследовано от Control)
Disposed

Происходит при освобождении серверного элемента управления из памяти, который является последним этапом жизненного цикла управления сервера при запросе страницы ASP.NET.

(Унаследовано от Control)
Init

Происходит при инициализации серверного элемента управления, который является первым шагом в его жизненном цикле.

(Унаследовано от Control)
Load

Происходит при загрузке серверного элемента управления в Page объект.

(Унаследовано от Control)
PreRender

Происходит после Control загрузки объекта, но до отрисовки.

(Унаследовано от Control)
Unload

Происходит при выгрузке серверного элемента управления из памяти.

(Унаследовано от Control)

Явные реализации интерфейса

Имя Описание
IAttributeAccessor.GetAttribute(String)

Возвращает атрибут веб-элемента управления с указанным именем.

(Унаследовано от WebControl)
IAttributeAccessor.SetAttribute(String, String)

Задает атрибут веб-элемента управления указанным именем и значением.

(Унаследовано от WebControl)
ICompositeControlDesignerAccessor.RecreateChildControls()

Позволяет разработчику конструктора для составного элемента управления создать дочерние элементы управления элемента управления на поверхности конструктора.

(Унаследовано от Part)
IControlBuilderAccessor.ControlBuilder

Описание этого элемента см. в разделе ControlBuilder.

(Унаследовано от Control)
IControlDesignerAccessor.GetDesignModeState()

Описание этого элемента см. в разделе GetDesignModeState().

(Унаследовано от Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

Описание этого элемента см. в разделе SetDesignModeState(IDictionary).

(Унаследовано от Control)
IControlDesignerAccessor.SetOwnerControl(Control)

Описание этого элемента см. в разделе SetOwnerControl(Control).

(Унаследовано от Control)
IControlDesignerAccessor.UserData

Описание этого элемента см. в разделе UserData.

(Унаследовано от Control)
IDataBindingsAccessor.DataBindings

Описание этого элемента см. в разделе DataBindings.

(Унаследовано от Control)
IDataBindingsAccessor.HasDataBindings

Описание этого элемента см. в разделе HasDataBindings.

(Унаследовано от Control)
IExpressionsAccessor.Expressions

Описание этого элемента см. в разделе Expressions.

(Унаследовано от Control)
IExpressionsAccessor.HasExpressions

Описание этого элемента см. в разделе HasExpressions.

(Унаследовано от Control)
IParserAccessor.AddParsedSubObject(Object)

Описание этого элемента см. в разделе AddParsedSubObject(Object).

(Унаследовано от Control)

Методы расширения

Имя Описание
EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>)

Включает поведение динамических данных для указанного элемента управления данными.

EnableDynamicData(INamingContainer, Type, Object)

Включает поведение динамических данных для указанного элемента управления данными.

EnableDynamicData(INamingContainer, Type)

Включает поведение динамических данных для указанного элемента управления данными.

FindDataSourceControl(Control)

Возвращает источник данных, связанный с элементом управления данными для указанного элемента управления.

FindFieldTemplate(Control, String)

Возвращает шаблон поля для указанного столбца в контейнере именования указанного элемента управления.

FindMetaTable(Control)

Возвращает объект метатабли для содержащего элемента управления данными.

GetDefaultValues(INamingContainer)

Возвращает коллекцию значений по умолчанию для указанного элемента управления данными.

GetMetaTable(INamingContainer)

Возвращает метаданные таблицы для указанного элемента управления данными.

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

Задает сопоставление метаданных таблицы и значений по умолчанию для указанного элемента управления данными.

SetMetaTable(INamingContainer, MetaTable, Object)

Задает сопоставление метаданных таблицы и значений по умолчанию для указанного элемента управления данными.

SetMetaTable(INamingContainer, MetaTable)

Задает метаданные таблицы для указанного элемента управления данными.

TryGetMetaTable(INamingContainer, MetaTable)

Определяет, доступны ли метаданные таблицы.

Применяется к

См. также раздел