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


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

Определение

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

Перегрузки

EditorPartCollection()

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

EditorPartCollection(ICollection)

Инициализирует новый экземпляр класса EditorPartCollection, передавая в него коллекцию ICollection элементов управления EditorPart.

EditorPartCollection(EditorPartCollection, ICollection)

Инициализирует новый экземпляр класса EditorPartCollection, передавая в него коллекцию EditorPartCollection элементов управления EditorPart и коллекцию ICollection дополнительных элементов управления EditorPart.

EditorPartCollection()

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

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

Комментарии

Конструктор EditorPartCollection инициализирует пустой EditorPartCollection экземпляр класса . Эта перегрузка конструктора используется классом EditorZone в своем CreateEditorParts методе для создания пустого объекта коллекции. Затем зона создает экземпляры всех EditorPart элементов управления, объявленных в шаблоне дочерней зоны, и использует внутренний метод для их добавления в коллекцию.

Эту перегрузку конструктора EditorPartCollection нельзя использовать для создания нового экземпляра EditorPartCollection и добавления EditorPart в него элементов управления. Вместо этого для конструктора EditorPartCollection необходимо использовать одну из других перегрузок.

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

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

EditorPartCollection(ICollection)

Инициализирует новый экземпляр класса EditorPartCollection, передавая в него коллекцию ICollection элементов управления EditorPart.

public:
 EditorPartCollection(System::Collections::ICollection ^ editorParts);
public EditorPartCollection (System.Collections.ICollection editorParts);
new System.Web.UI.WebControls.WebParts.EditorPartCollection : System.Collections.ICollection -> System.Web.UI.WebControls.WebParts.EditorPartCollection
Public Sub New (editorParts As ICollection)

Параметры

editorParts
ICollection

ICollection, состоящая из элементов управления EditorPart.

Примеры

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

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

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

  protected void Button1_Click(object sender, EventArgs e)
  {
    ArrayList list = new ArrayList(2);
    list.Add(AppearanceEditorPart1);
    list.Add(PropertyGridEditorPart1);
    // Pass an ICollection object to the constructor.
    EditorPartCollection myParts = new EditorPartCollection(list);
    foreach (EditorPart editor in myParts)
    {
      editor.BackColor = System.Drawing.Color.LightBlue;
      editor.Description = "My " + editor.DisplayTitle + " editor.";
    }

    // Use the IndexOf property to locate an EditorPart control.
    int propertyGridPart = myParts.IndexOf(PropertyGridEditorPart1);
    myParts[propertyGridPart].ChromeType = PartChromeType.TitleOnly;

    // Use the Contains method to see if an EditorPart exists.
    if(!myParts.Contains(LayoutEditorPart1))
      LayoutEditorPart1.BackColor = System.Drawing.Color.LightYellow;
    
    // Use the CopyTo method to create an array of EditorParts.
    EditorPart[] partArray = new EditorPart[3];
    partArray[0] = LayoutEditorPart1;
    myParts.CopyTo(partArray,1);
    Label1.Text = "<h3>EditorParts in Custom Array</h3>";
    foreach (EditorPart ePart in partArray)
    {
      Label1.Text += ePart.Title + "<br />";
    }

  }

</script>
<!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 Button1_Click(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    Dim list As New ArrayList(2)
    list.Add(AppearanceEditorPart1)
    list.Add(PropertyGridEditorPart1)
    ' Pass an ICollection object to the constructor.
    Dim myParts As New EditorPartCollection(list)
    Dim editor As EditorPart
    For Each editor In myParts
      editor.BackColor = System.Drawing.Color.LightBlue
      editor.Description = "My " + editor.DisplayTitle + " editor."
    Next editor
    
    ' Use the IndexOf property to locate an EditorPart control.
    Dim propertyGridPart As Integer = _
      myParts.IndexOf(PropertyGridEditorPart1)
    myParts(propertyGridPart).ChromeType = PartChromeType.TitleOnly
    
    ' Use the Contains method to see if an EditorPart exists.
    If Not myParts.Contains(LayoutEditorPart1) Then
      LayoutEditorPart1.BackColor = System.Drawing.Color.LightYellow
    End If
    
    ' Use the CopyTo method to create an array of EditorParts.
    Dim partArray(2) As EditorPart
    partArray(0) = LayoutEditorPart1
    myParts.CopyTo(partArray, 1)
    Label1.Text = "<h3>EditorParts in Custom Array</h3>"
    Dim ePart As EditorPart
    For Each ePart In partArray
      Label1.Text += ePart.Title + "<br />"
    Next ePart

  End Sub

</script>

Вы можете загрузить страницу в браузере и переключить ее в режим редактирования, выбрав Изменить в раскрывающемся списке Режим отображения . Вы можете щелкнуть меню глаголов (стрелка вниз) в строке заголовка TextDisplayWebPart элемента управления и нажать кнопку Изменить , чтобы изменить элемент управления. Когда отображается пользовательский интерфейс редактирования, вы увидите EditorPart все элементы управления. Нажмите кнопку Создать EditorPartCollection , чтобы увидеть влияние на два EditorPart элемента управления, добавленных в EditorPartCollection объект .

Комментарии

Конструктор EditorPartCollection инициализирует экземпляр EditorPartCollection класса и передает коллекцию EditorPart элементов управления. Это одна перегрузка конструктора EditorPartCollection , которую можно использовать для создания нового EditorPartCollection объекта и добавления EditorPart в него элементов управления.

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

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

Еще один распространенный сценарий использования конструктора EditorPartCollection — разработка пользовательских EditorPart элементов управления, которые необходимо связать с серверным элементом управления, чтобы пользователи могли изменять настраиваемые свойства в элементе управления. В этом сценарии серверный элемент управления должен реализовывать IWebEditable интерфейс, а в рамках этой задачи он должен реализовать CreateEditorParts метод . В этом методе, чтобы пользовательские EditorPart элементы управления могли изменять серверный элемент управления, необходимо добавить EditorPart элементы управления в ICollection экземпляр, например в ArrayList объект . Затем можно передать коллекцию EditorPart элементов управления конструктору EditorPartCollection , чтобы создать новый EditorPartCollection объект, который EditorZoneBase зона использует для настройки всех элементов управления и начала процесса редактирования.

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

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

EditorPartCollection(EditorPartCollection, ICollection)

Инициализирует новый экземпляр класса EditorPartCollection, передавая в него коллекцию EditorPartCollection элементов управления EditorPart и коллекцию ICollection дополнительных элементов управления EditorPart.

public:
 EditorPartCollection(System::Web::UI::WebControls::WebParts::EditorPartCollection ^ existingEditorParts, System::Collections::ICollection ^ editorParts);
public EditorPartCollection (System.Web.UI.WebControls.WebParts.EditorPartCollection existingEditorParts, System.Collections.ICollection editorParts);
new System.Web.UI.WebControls.WebParts.EditorPartCollection : System.Web.UI.WebControls.WebParts.EditorPartCollection * System.Collections.ICollection -> System.Web.UI.WebControls.WebParts.EditorPartCollection
Public Sub New (existingEditorParts As EditorPartCollection, editorParts As ICollection)

Параметры

existingEditorParts
EditorPartCollection

Коллекция ICollection элементов управления EditorPart, существующих в зоне.

editorParts
ICollection

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

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

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