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


WebPartManager Класс

Определение

Служит центральным классом набора элементов управления веб-частей, управляя всеми элементами управления веб-частей, функциями и событиями, происходящими на веб-странице.

public ref class WebPartManager : System::Web::UI::Control, System::Web::UI::INamingContainer, System::Web::UI::WebControls::WebParts::IPersonalizable
[System.ComponentModel.Bindable(false)]
public class WebPartManager : System.Web.UI.Control, System.Web.UI.INamingContainer, System.Web.UI.WebControls.WebParts.IPersonalizable
[<System.ComponentModel.Bindable(false)>]
type WebPartManager = class
    inherit Control
    interface INamingContainer
    interface IPersonalizable
Public Class WebPartManager
Inherits Control
Implements INamingContainer, IPersonalizable
Наследование
WebPartManager
Атрибуты
Реализации

Примеры

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

Пример кода состоит из четырех частей:

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

  • Веб-страница, содержащая два пользовательских WebPart элемента управления, которые могут быть подключены, и <asp:webpartmanager> элемент.

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

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

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

<%@ 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 содержит директивы для пользовательского элемента управления и пользовательских элементов управления. <asp:webpartmanager> Существует элемент, элемент для <asp:webpartzone> хранения пользовательских элементов управления и <asp:connectionszone> элемента. На странице также содержится встроенный код, который обрабатывает события, связанные с подключением для WebPartManager элемента управления; вы можете увидеть эффект этого кода при подключении и отключении элементов управления.

<%@ Page Language="C#" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuCS" 
  Src="DisplayModeMenuCS.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.CS.Controls" 
  Assembly="ConnectionSampleCS" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
 
  private void UpdateLabelData(int wpCount, int connCount)
  {
    Label1.Text = "WebPart Control Count:  " + wpCount.ToString();
    Label2.Text = "Connections Count: " + connCount.ToString();
  }

  protected void WebPartManager1_WebPartsConnected(object sender, WebPartConnectionsEventArgs e)
  {
    UpdateLabelData(WebPartManager1.WebParts.Count,
      WebPartManager1.Connections.Count);
  }

  protected void WebPartManager1_WebPartsDisconnected(object sender, WebPartConnectionsEventArgs e)
  {
    UpdateLabelData(WebPartManager1.WebParts.Count,
      WebPartManager1.Connections.Count);
  }
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
      <!-- Reference the WebPartManager control. -->
      <asp:WebPartManager ID="WebPartManager1" runat="server"  
        OnWebPartsConnected="WebPartManager1_WebPartsConnected" 
        OnWebPartsDisconnected="WebPartManager1_WebPartsDisconnected" />
    <div>
      <uc1:DisplayModeMenuCS ID="displaymode1" runat="server" />
      <!-- Reference consumer and provider controls in a zone. -->
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <aspSample:ZipCodeWebPart ID="zip1" 
            runat="server" 
            Title="Zip Code Control"/>
          <aspSample:WeatherWebPart ID="weather1" 
            runat="server" 
            Title="Weather Control" />
        </ZoneTemplate>
      </asp:WebPartZone>
      <hr />
      <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
      <br />
      <asp:Label ID="Label2" runat="server" Text=""></asp:Label>
      <!-- Add a ConnectionsZone so users can connect controls. -->
      <asp:ConnectionsZone ID="ConnectionsZone1" runat="server" />
    </div>
    </form>
</body>
</html>
<%@ Page Language="vb" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuVB" 
  Src="DisplayModeMenuVB.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.VB.Controls" 
  Assembly="ConnectionSampleVB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Protected Sub WebPartManager1_WebPartsConnected( _
    ByVal sender As Object, _
    ByVal e As System.Web.UI.WebControls.WebParts.WebPartConnectionsEventArgs)
    
    UpdateLabelData(WebPartManager1.WebParts.Count, _
      WebPartManager1.Connections.Count)
    
  End Sub

  Protected Sub WebPartManager1_WebPartsDisconnected( _
    ByVal sender As Object, _
    ByVal e As System.Web.UI.WebControls.WebParts.WebPartConnectionsEventArgs)
    
    UpdateLabelData(WebPartManager1.WebParts.Count, _
      WebPartManager1.Connections.Count)
    
  End Sub
  
  Private Sub UpdateLabelData(ByVal wpCount As Integer, _
    ByVal connCount As Integer)
    
    Label1.Text = "WebPart Control Count:  " & wpCount.ToString()
    Label2.Text = "Connections Count: " & connCount.ToString()
    
  End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
      <!-- Reference the WebPartManager control. -->
      <asp:WebPartManager ID="WebPartManager1" runat="server" OnWebPartsConnected="WebPartManager1_WebPartsConnected" OnWebPartsDisconnected="WebPartManager1_WebPartsDisconnected" />
    <div>
      <uc1:DisplayModeMenuVB ID="displaymode1" runat="server" />
      <!-- Reference consumer and provider controls in a zone. -->
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <aspSample:ZipCodeWebPart ID="zip1" 
            runat="server" 
            Title="Zip Code Control"/>
          <aspSample:WeatherWebPart ID="weather1" 
            runat="server" 
            Title="Weather Control" />
        </ZoneTemplate>
      </asp:WebPartZone>
      <hr />
      <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
      <br />
      <asp:Label ID="Label2" runat="server" Text=""></asp:Label>
      <!-- Add a ConnectionsZone so users can connect controls. -->
      <asp:ConnectionsZone ID="ConnectionsZone1" runat="server" />
    </div>
    </form>
</body>
</html>

Третья часть примера — исходный код для элементов управления. Обратите внимание, что есть интерфейс с именем IZipCode, и этот интерфейс реализуется в ZipCodeWebPart классе. Этот класс имеет специальный метод обратного вызова, который ProvideIZipCode служит поставщиком. Другой тип, именованныйWeatherWebPartGetIZipCode, также реализуется с помощью специального метода, который позволяет элементу управления выступать в качестве потребителя другого элемента управления.

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

namespace Samples.AspNet.CS.Controls
{
  using System;
  using System.Web;
  using System.Web.Security;
  using System.Security.Permissions;
  using System.Web.UI;
  using System.Web.UI.WebControls;
  using System.Web.UI.WebControls.WebParts;

  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public interface IZipCode
  {
    string ZipCode { get; set;}
  }

  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class ZipCodeWebPart : WebPart, IZipCode
  {
    string zipCodeText = String.Empty;
    TextBox input;
    Button send;

    public ZipCodeWebPart()
    {
    }

    // Make the implemented property personalizable to save 
    // the Zip Code between browser sessions.
    [Personalizable()]
    public virtual string ZipCode
    {
      get { return zipCodeText; }
      set { zipCodeText = value; }
    }

    // This is the callback method that returns the provider.
    [ConnectionProvider("Zip Code")]
    public IZipCode ProvideIZipCode()
    {
      return this;
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      input = new TextBox();
      this.Controls.Add(input);
      send = new Button();
      send.Text = "Enter 5-digit Zip Code";
      send.Click += new EventHandler(this.submit_Click);
      this.Controls.Add(send);
    }

    private void submit_Click(object sender, EventArgs e)
    {
      if (!string.IsNullOrEmpty(input.Text))
      {
        zipCodeText = Page.Server.HtmlEncode(input.Text);
        input.Text = String.Empty;
      }
    }
  }

  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class WeatherWebPart : WebPart
  {
    private IZipCode _provider;
    string _zipSearch;
    Label DisplayContent;

    // This method is identified by the ConnectionConsumer 
    // attribute, and is the mechanism for connecting with 
    // the provider. 
    [ConnectionConsumer("Zip Code")]
    public void GetIZipCode(IZipCode Provider)
    {
      _provider = Provider;
    }
    
    protected override void OnPreRender(EventArgs e)
    {
      EnsureChildControls();

      if (this._provider != null)
      {
        _zipSearch = _provider.ZipCode.Trim();
        DisplayContent.Text = "My Zip Code is:  " + _zipSearch;
      }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      DisplayContent = new Label();
      this.Controls.Add(DisplayContent);
    }
  }
}
Imports System.Web
Imports System.Web.Security
Imports System.Security.Permissions
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 Interface IZipCode

    Property ZipCode() As String

  End Interface

  <AspNetHostingPermission(SecurityAction.Demand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class ZipCodeWebPart
    Inherits WebPart
    Implements IZipCode
    Private zipCodeText As String = String.Empty
    Private input As TextBox
    Private send As Button

    Public Sub New()
    End Sub

    ' Make the implemented property personalizable to save 
    ' the Zip Code between browser sessions.
    <Personalizable()> _
    Public Property ZipCode() As String _
      Implements IZipCode.ZipCode

      Get
        Return zipCodeText
      End Get
      Set(ByVal value As String)
        zipCodeText = value
      End Set
    End Property

    ' This is the callback method that returns the provider.
    <ConnectionProvider("Zip Code")> _
    Public Function ProvideIZipCode() As IZipCode
      Return Me
    End Function


    Protected Overrides Sub CreateChildControls()
      Controls.Clear()
      input = New TextBox()
      Me.Controls.Add(input)
      send = New Button()
      send.Text = "Enter 5-digit Zip Code"
      AddHandler send.Click, AddressOf Me.submit_Click
      Me.Controls.Add(send)

    End Sub


    Private Sub submit_Click(ByVal sender As Object, _
      ByVal e As EventArgs)

      If input.Text <> String.Empty Then
        zipCodeText = Page.Server.HtmlEncode(input.Text)
        input.Text = String.Empty
      End If

    End Sub

  End Class

  <AspNetHostingPermission(SecurityAction.Demand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class WeatherWebPart
    Inherits WebPart
    Private _provider As IZipCode
    Private _zipSearch As String
    Private DisplayContent As Label

    ' This method is identified by the ConnectionConsumer 
    ' attribute, and is the mechanism for connecting with 
    ' the provider. 
    <ConnectionConsumer("Zip Code")> _
    Public Sub GetIZipCode(ByVal Provider As IZipCode)
      _provider = Provider
    End Sub


    Protected Overrides Sub OnPreRender(ByVal e As EventArgs)
      EnsureChildControls()

      If Not (Me._provider Is Nothing) Then
        _zipSearch = _provider.ZipCode.Trim()
    DisplayContent.Text = "My Zip Code is:  " + _zipSearch
      End If

    End Sub

    Protected Overrides Sub CreateChildControls()
      Controls.Clear()
      DisplayContent = New Label()
      Me.Controls.Add(DisplayContent)

    End Sub

  End Class

End Namespace

После загрузки веб-страницы в браузере щелкните раскрывающийся список " Режим отображения " и выберите "Подключиться ", чтобы переключить страницу в режим подключения. В режиме <asp:connectionszone> подключения элемент используется для создания соединений между элементами управления. В режиме подключения щелкните стрелку вниз в строке заголовка элемента управления ZIP Code, чтобы активировать его меню команд, а затем нажмите кнопку "Подключить". После появления пользовательского интерфейса подключения щелкните ссылку "Создать подключение к потребителю ". Появится ячейка с раскрывающимся списком. Выберите "Управление погодой " в раскрывающемся списке и нажмите кнопку "Подключиться ", чтобы завершить подключение двух элементов управления. Нажмите кнопку "Закрыть", а затем используйте раскрывающийся список "Режим отображения ", чтобы вернуть страницу в обычный режим просмотра. Вы можете ввести ZIP-код, а элемент управления потребителем будет обновлен со значением, которое вы ввели. ZipCode Так как свойство было отмечено Personalizable атрибутом в исходном коде, это значение свойства будет сохраняться в сеансах браузера, таким образом сохраняя значение, введенное пользователем. Более сложный контроль потребителей может принимать сведения о ZIP-коде, искать сведения о погоде на основе кода и отображать его пользователю.

Комментарии

Элемент WebPartManager управления выступает в качестве центра или центра управления приложения веб-частей. На каждой странице, использующего элементы управления веб-части, должен быть один и только одинWebPartManager экземпляр элемента управления. Как и в большинстве аспектов приложений веб-частей, WebPartManager элемент управления работает только с прошедшими проверку подлинности пользователями. Кроме того, ее функциональные возможности практически полностью работают с элементами управления серверами, которые находятся в зонах веб-частей, наследующих WebZone от класса. Серверные элементы управления, находящиеся на странице вне этих зон, могут иметь очень мало функций веб-частей или взаимодействия с элементом WebPartManager управления.

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

Категория задач Что делает элемент управления
Отслеживание элементов управления веб-частей Отслеживает множество различных видов элементов управления на странице, которая предоставляет функции веб-частей, включая WebPart элементы управления, подключения, зоны и другие.
Добавление и удаление элементов управления веб-частей Предоставляет методы для добавления, удаления и закрытия WebPart элементов управления на странице.
Администрирование подключений Создает соединения между элементами управления и отслеживает подключения, а также процессы их добавления и удаления.
Персонализация элементов управления и страниц Позволяет пользователям перемещать элементы управления в разные расположения на странице и запускать представления, в которых пользователи могут изменять внешний вид, свойства и поведение элементов управления. Поддерживает параметры персонализации для конкретных пользователей на каждой странице.
Переключение между различными представлениями страниц Переключает страницу между различными специализированными представлениями страницы, чтобы пользователи могли выполнять определенные задачи, такие как изменение макета страницы или элементы управления редактированием.
Создание событий жизненного цикла веб-частей Определяет, вызывает и позволяет разработчикам обрабатывать события жизненного цикла элементов управления веб-частей, например при добавлении, перемещении, подключении или удалении элементов управления.
Включение импорта и экспорта элементов управления Экспортирует XML-потоки, содержащие состояние свойств WebPart элементов управления, и позволяет пользователям импортировать файлы для удобства при персонализации сложных элементов управления на других страницах или сайтах.

Класс WebPartManager имеет большой набор свойств. В соответствии с WebPartManager ролью отслеживания других элементов управления он имеет ряд свойств, которые ссылаются на коллекции элементов управления веб-частей или другие специальные объекты веб-частей. Свойства AvailableTransformers, Connections, , и DynamicConnectionsSupportedDisplayModesDisplayModesWebPartsControlsZones свойства являются всеми коллекциями, используемыми элементом WebPartManager управления для отслеживания и других задач управления.

Другая группа свойств содержит настраиваемые предупреждения, которые применяются в определенных сценариях, происходящих в приложении веб-частей. К ним относятся CloseProviderWarningсвойства , DeleteWarningа также ExportSensitiveDataWarning свойства.

Класс WebPartManager переопределяет некоторые из его базовых унаследованных свойств, которые используются многими элементами управления веб-сервера. К ним относятся EnableThemingсвойства и VisibleSkinIDсвойства.

Наконец, существует группа свойств, полезная для доступа к текущему состоянию приложения. Свойство DisplayMode указывает текущий режим отображения страницы. Свойство EnableClientScript указывает, разрешено ли элементу управления отображать клиентский скрипт, который имеет отношение к ситуациям, когда у пользователей могут быть браузеры с разными возможностями или отключены сценарии. Это Internals свойство полезно для ссылки на класс служебной программы, который содержит вызовы к ряду важных методов веб-частей, используемых для случаев расширения. Скрывая вызовы этих методов в отдельном классе ( WebPartManagerInternals классе), WebPartManager собственный API класса упрощается. Свойство Personalization предоставляет доступ к объектам персонализации, которые хранят параметры персонализации пользователей и сохраняют эти данные в постоянном хранилище. Свойство SelectedWebPart указывает, какой WebPart элемент управления на странице в данный момент выбирается пользователем или приложением. Свойство IPersonalizable.IsDirty указывает, изменились ли пользовательские WebPart данные персонализации элемента управления.

Элемент WebPartManager управления содержит пять встроенных режимов отображения или представлений веб-страницы. Разработчики могут расширить эту функцию, создавая настраиваемые режимы отображения, расширяя типы, такие как WebZone класс или ToolZone класс. Пользователи могут переключать страницу в различные режимы отображения, при условии, что на странице присутствует правильный вид элементов управления, соответствующих заданному режиму отображения.

Замечание

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

Стандартные режимы отображения представлены общедоступными полями в WebPartManager классе. В следующей таблице перечислены поля и режимы отображения, к которые они относятся. Текущий режим отображения страницы, как отмечалось выше, всегда ссылается на DisplayMode свойство и набор режимов отображения, которые могут быть на определенной странице, учитывая тип зон, присутствующих на странице, содержится в свойстве SupportedDisplayModes .

Поле Сведения о режиме отображения
BrowseDisplayMode Обычное пользовательское представление веб-страницы; по умолчанию и наиболее распространенный режим отображения.
DesignDisplayMode Представление, в котором пользователи могут изменять или удалять элементы управления для изменения макета страницы.
EditDisplayMode Представление, в котором отображается пользовательский интерфейс редактирования; пользователи могут изменять внешний вид, свойства и поведение элементов управления, видимых в обычном режиме просмотра.
CatalogDisplayMode Представление, в котором пользовательский интерфейс каталога становится видимым; пользователи могут добавлять элементы управления на страницу из каталогов доступных элементов управления.
ConnectDisplayMode Представление, в котором пользовательский интерфейс подключения становится видимым; пользователи могут подключать, управлять или отключать подключения между элементами управления.

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

Замечание

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

Event Описание
AuthorizeWebPart Происходит непосредственно перед добавлением элемента управления на страницу, чтобы убедиться, что она авторизована.
ConnectionsActivated Происходит после активации всех подключений на странице.
ConnectionsActivating Происходит непосредственно перед процессом активации всех подключений на странице.
DisplayModeChanged Происходит после изменения текущего режима отображения страницы.
DisplayModeChanging Происходит непосредственно перед процессом изменения режима отображения страницы.
SelectedWebPartChanged Происходит после отмены выбора элемента управления.
SelectedWebPartChanging Происходит непосредственно перед процессом отмены выбора элемента управления.
WebPartAdded Происходит после добавления элемента управления в зону.
WebPartAdding Происходит непосредственно перед процессом добавления элемента управления в зону.
WebPartClosed Происходит после закрытия элемента управления (удалено со страницы).
WebPartClosing Происходит непосредственно перед закрытием элемента управления.
WebPartDeleted Происходит после того, как экземпляр динамического элемента управления (созданный программным способом или добавлен из каталога) был окончательно удален.
WebPartDeleting Происходит непосредственно перед процессом удаления динамического элемента управления.
WebPartMoved Происходит после перемещения элемента управления в ее зону или в другую зону.
WebPartMoving Происходит непосредственно перед процессом перемещения элемента управления.
WebPartsConnected Происходит после того, как два элемента управления, выбранные для участия в соединении, установили подключение.
WebPartsConnecting Происходит непосредственно перед процессом подключения двух элементов управления.
WebPartsDisconnected Происходит после отключения двух подключенных элементов управления.
WebPartsDisconnecting Происходит непосредственно перед процессом отключения двух элементов управления.

Элемент WebPartManager управления имеет множество методов для управления страницами веб-частей. Большой набор методов, не перечисленных здесь, — это методы, имена которых имеют форму OnEventName. Обычно эти методы вызывают связанное событие и предоставляют событие обработчиком типа WebPartEventHandler. Большинство этих методов можно переопределить разработчиками, наследуемыми от WebPartManager класса. Кроме того, разработчики страниц могут предоставлять пользовательские обработчики событий, связанных с этими методами. Например, в случае WebPartAdded события разработчик страницы может добавить OnWebPartAdded атрибут в <asp:webpartmanager> разметку веб-страницы, а затем назначить пользовательский метод атрибуту, чтобы обеспечить настраиваемую обработку события. Атрибут соответствует методу OnWebPartAdded , и этот базовый шаблон обработки событий работает для большинства событий веб-частей и связанных с ними методов.

Кроме того, элемент WebPartManager управления имеет методы, определенные для задачи управления WebPart элементами управления (и серверных или пользовательских элементов управления, используемых в качестве WebPart элементов управления). К этим методам относятся AddWebPart, CopyWebPartCloseWebPartDisconnectWebPartDeleteWebPartBeginWebPartEditingEndWebPartEditingCreateWebPartAuthorizeWebPartGetGenericWebPartImportWebPartExportWebPartIsAuthorizedи .MoveWebPart

Другой набор методов предназначен для подключений. Это включает такие методы, как ActivateConnections, ConnectWebPartsDisconnectWebPartCanConnectWebPartsBeginWebPartConnectingDisconnectWebPartsEndWebPartConnectingCreateAvailableTransformersGetConsumerConnectionPointsи .GetProviderConnectionPoints

Наконец, некоторые WebPartManager методы сосредоточены на функциональных возможностях персонализации. К ним относятся CreatePersonalization, , , IPersonalizable.SaveSetPersonalizationDirtyIPersonalizable.LoadLoadControlStateSaveCustomPersonalizationStateи .SaveControlState

Дополнительные сведения о других WebPartManager методах, доступных через Internals свойство, см. в документации по классу WebPartManagerInternals .

Примечания для тех, кто наследует этот метод

Элемент WebPartManager управления предназначен для расширения. Так как это так важно для приложений веб-частей, если требуется расширить определенный тип или элемент управления в наборе элементов управления веб-частей, во многих случаях необходимо также расширить WebPartManager класс, так как он, скорее всего, имеет некоторое свойство или метод, необходимый для работы пользовательского типа в контексте приложения веб-частей. Справочная документация по веб-частям (см System.Web.UI.WebControls.WebParts.) при обсуждении расширения типа веб-частей часто упоминает о том, что необходимо сделать для расширения WebPartManager класса, или показывает, как расширить его в примере кода.

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

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

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

Поля

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

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

CatalogDisplayMode

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

ConnectDisplayMode

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

DesignDisplayMode

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

EditDisplayMode

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

Свойства

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

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

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

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

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

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

BindingContainer

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

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

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

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

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

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

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

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

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

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

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

Connections

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

Context

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

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

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

DataItemContainer

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

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

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

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

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

DesignMode

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

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

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

DisplayModes

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

DynamicConnections

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

EnableClientScript

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

EnableTheming

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

EnableViewState

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

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

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

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

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

HasChildViewState

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

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

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

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

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

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

Получает ссылку на WebPartManagerInternals класс, который используется для объединения и разделения набора методов, которые фактически реализуются в WebPartManager классе, но в основном полезны для разработчиков элементов управления.

IsChildControlStateCleared

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

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

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

IsTrackingViewState

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

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

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

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

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

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

Возвращает объект, разрешающий PermissionSet только Execution разрешение и Medium разрешение.

MinimalPermissionSet

Возвращает объект, разрешающий PermissionSet только Execution разрешение и Minimal разрешение.

NamingContainer

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

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

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

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

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

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

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

RenderingCompatibility

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

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

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

Site

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

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

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

StaticConnections

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

SupportedDisplayModes

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

TemplateControl

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

WebParts

Получает ссылку на все WebPart элементы управления, отслеживаемые WebPartManager элементом управления на веб-странице.

Zones

Возвращает ссылку на коллекцию всех WebPartZoneBase зон на веб-странице.

Методы

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

Делает активные все подключения на веб-странице, которые в настоящее время неактивны.

AddedControl(Control, Int32)

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

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

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

(Унаследовано от Control)
AddWebPart(WebPart, WebPartZoneBase, Int32)

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

ApplyStyleSheetSkin(Page)

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

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

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

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

Запускает процесс подключения двух WebPart элементов управления.

BeginWebPartEditing(WebPart)

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

BuildProfileTree(String, Boolean)

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

(Унаследовано от Control)
CanConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint, WebPartTransformer)

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

CanConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint)

WebPart Проверяет элементы управления, которые будут участвовать в подключении, чтобы определить, способны ли они быть подключены, когда элементы управления потребителей и поставщиков имеют совместимые интерфейсы и WebPartTransformer объект не нужен.

CheckRenderClientScript()

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

ClearCachedClientID()

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

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

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

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

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

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

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

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

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

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

WebPart Закрывает элемент управления таким образом, чтобы он не отображался на веб-странице, но может быть повторно открыт.

ConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint, WebPartTransformer)

Создает соединение между двумя WebPart или GenericWebPart элементами управления с помощью ссылок на элементы управления, их указанные ConnectionPoint объекты и WebPartTransformer объект.

ConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint)

Создает соединение между двумя WebPart или GenericWebPart элементами управления, используя только ссылки на элементы управления и их указанные ConnectionPoint объекты.

CopyWebPart(WebPart)

Используется набором элементов управления веб-частей для создания копии или серверного WebPart элемента управления для добавления элемента управления на веб-страницу.

CreateAvailableTransformers()

Создает набор преобразователей, указанных в файле конфигурации веб-сайта, и добавляет их в коллекцию преобразователей, на которые AvailableTransformers ссылается свойство.

CreateChildControls()

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

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

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

CreateDisplayModes()

Создает набор всех возможных режимов отображения для приложения веб-частей.

CreateDynamicConnectionID()

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

CreateDynamicWebPartID(Type)

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

CreateErrorWebPart(String, String, String, String, String)

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

CreatePersonalization()

Возвращает объект персонализации, содержащий данные персонализации пользователя для текущей веб-страницы.

CreateWebPart(Control)

Упаковывает серверный элемент управления, который не WebPart является элементом управления объектом GenericWebPart , чтобы элемент управления может иметь функциональные возможности веб-частей.

DataBind()

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

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

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

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

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

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

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

DisconnectWebPart(WebPart)

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

DisconnectWebParts(WebPartConnection)

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

Dispose()

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

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

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

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

Завершает процесс подключения WebPart элемента управления к другому элементу управления.

EndWebPartEditing()

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

EnsureChildControls()

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

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

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

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

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

(Унаследовано от Object)
ExportWebPart(WebPart, XmlWriter)

Создает XML-файл описания, содержащий данные о состоянии и свойств для элемента управления сервером.

FindControl(String, Int32)

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

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

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

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

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

GetConsumerConnectionPoints(WebPart)

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

GetCurrentWebPartManager(Page)

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

GetDesignModeState()

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

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

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

GetExportUrl(WebPart)

Получает относительный виртуальный путь и строку запроса, которая является частью запроса при попытке пользователя экспортировать WebPart элемент управления.

GetGenericWebPart(Control)

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

GetHashCode()

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

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

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

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)
HasControls()

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

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

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

(Унаследовано от Control)
ImportWebPart(XmlReader, String)

Импортирует XML-файл описания, содержащий данные о состоянии и свойств для WebPart элемента управления, и применяет данные к элементу управления.

IsAuthorized(Type, String, String, Boolean)

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

IsAuthorized(WebPart)

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

IsLiteralContent()

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

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

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

LoadCustomPersonalizationState(PersonalizationDictionary)

Хранит пользовательские данные персонализации, переданные WebPartManager в элемент управления объектами персонализации, которые будут использоваться позже во время процесса инициализации.

LoadViewState(Object)

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

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

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

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

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

(Унаследовано от Object)
MoveWebPart(WebPart, WebPartZoneBase, Int32)

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

OnAuthorizeWebPart(WebPartAuthorizationEventArgs)

AuthorizeWebPart Вызывает событие и вызывает обработчик события, если он существует.

OnBubbleEvent(Object, EventArgs)

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

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

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

OnConnectionsActivating(EventArgs)

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

OnDataBinding(EventArgs)

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

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

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

OnDisplayModeChanging(WebPartDisplayModeCancelEventArgs)

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

OnInit(EventArgs)

Init Вызывает событие, которое является первым событием в жизненном цикле WebPartManager элемента управления.

OnLoad(EventArgs)

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

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

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

OnSelectedWebPartChanged(WebPartEventArgs)

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

OnSelectedWebPartChanging(WebPartCancelEventArgs)

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

OnUnload(EventArgs)

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

OnWebPartAdded(WebPartEventArgs)

Вызывает событие, которое возникает WebPartAdded после WebPart добавления элемента управления на страницу.

OnWebPartAdding(WebPartAddingEventArgs)

WebPartAdding Вызывает событие, которое происходит во время добавления WebPart элемента управления (или сервера или пользовательского элемента управления) в WebPartZoneBase зону.

OnWebPartClosed(WebPartEventArgs)

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

OnWebPartClosing(WebPartCancelEventArgs)

WebPartClosing Вызывает событие, которое происходит во время удаления WebPart элемента управления сервером или элементом управления на странице.

OnWebPartDeleted(WebPartEventArgs)

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

OnWebPartDeleting(WebPartCancelEventArgs)

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

OnWebPartMoved(WebPartEventArgs)

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

OnWebPartMoving(WebPartMovingEventArgs)

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

OnWebPartsConnected(WebPartConnectionsEventArgs)

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

OnWebPartsConnecting(WebPartConnectionsCancelEventArgs)

WebPartsConnecting Вызывает событие, которое происходит во время установления соединения между двумя WebPart или серверными или пользовательскими элементами управления, содержащимися в WebPartZoneBase зоне.

OnWebPartsDisconnected(WebPartConnectionsEventArgs)

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

OnWebPartsDisconnecting(WebPartConnectionsCancelEventArgs)

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

OpenFile(String)

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

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

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

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

Позволяет элементу WebPartManager управления выдавать клиентский скрипт, используемый для различных функций персонализации, таких как перетаскивание WebPart элементов управления на веб-странице.

RemovedControl(Control)

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

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

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

RenderChildren(HtmlTextWriter)

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

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

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

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

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

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

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

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

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

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

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

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

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

SaveCustomPersonalizationState(PersonalizationDictionary)

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

SaveViewState()

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

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

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

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

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

SetRenderMethodDelegate(RenderMethod)

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

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

SelectedWebPart Задает значение свойства, равное выбранному WebPart в данный момент или серверу управления.

SetTraceData(Object, Object, Object)

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

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

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

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

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

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

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

События

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

Происходит при IsAuthorized вызове метода, чтобы определить, можно ли WebPart добавить элемент управления сервером на страницу.

ConnectionsActivated

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

ConnectionsActivating

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

DataBinding

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

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

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

DisplayModeChanging

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

Disposed

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

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

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

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

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

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

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

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

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

SelectedWebPartChanging

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

Unload

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

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

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

WebPartAdding

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

WebPartClosed

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

WebPartClosing

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

WebPartDeleted

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

WebPartDeleting

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

WebPartMoved

Происходит после перемещения элемента управления сервером WebPart в другое расположение на веб-странице.

WebPartMoving

Происходит во время перемещения WebPart или другого серверного элемента управления, содержащегося в WebPartZoneBase зоне.

WebPartsConnected

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

WebPartsConnecting

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

WebPartsDisconnected

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

WebPartsDisconnecting

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

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

Имя Описание
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)
IPersonalizable.IsDirty

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

IPersonalizable.Load(PersonalizationDictionary)

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

IPersonalizable.Save(PersonalizationDictionary)

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

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

Имя Описание
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)

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

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

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