EditorPartCollection Construtores

Definição

Inicializa uma nova instância da EditorPartCollection classe.

Sobrecargas

Name Description
EditorPartCollection()

Inicializa uma nova instância vazia da EditorPartCollection classe.

EditorPartCollection(ICollection)

Inicializa uma nova instância da EditorPartCollection classe passando uma ICollection coleção de EditorPart controlos.

EditorPartCollection(EditorPartCollection, ICollection)

Inicializa uma nova instância da EditorPartCollection classe passando uma EditorPartCollection coleção de EditorPart controlos e uma ICollection coleção de controlos adicionais EditorPart .

EditorPartCollection()

Inicializa uma nova instância vazia da EditorPartCollection classe.

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

Observações

O EditorPartCollection construtor inicializa uma instância vazia da EditorPartCollection classe. Esta sobrecarga do construtor é usada internamente pela EditorZone classe no seu CreateEditorParts método para criar um objeto de coleção vazio. A zona cria então instâncias de todos os EditorPart controlos declarados no modelo da zona filha e utiliza um método interno para os adicionar à coleção.

Não podes usar esta sobrecarga do EditorPartCollection construtor para criar uma nova instância e EditorPartCollection adicionar EditorPart controlos a ela. Tens de usar uma das outras sobrecargas para o EditorPartCollection construtor em vez disso.

Ver também

Aplica-se a

EditorPartCollection(ICollection)

Inicializa uma nova instância da EditorPartCollection classe passando uma ICollection coleção de EditorPart controlos.

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)

Parâmetros

editorParts
ICollection

Um ICollection dos EditorPart controlos.

Exemplos

O exemplo de código seguinte demonstra como criar um personalizado EditorPartCollection e, mesmo que a coleção seja apenas leitura, ainda assim realizar uma operação em lote para alterar os controlos individuais EditorPart na coleção. Para o código completo necessário para executar o exemplo, consulte a secção Exemplo da EditorPartCollection visão geral da classe.

O código no Button1_Click evento cria um ArrayList objeto, adiciona dois dos três EditorPart controlos da página ao objeto e depois cria um novo EditorPartCollection objeto usando o EditorPartCollection construtor. Também demonstra como pode fazer alterações aos controlos subjacentes EditorPart , mesmo que a coleção seja apenas de leitura.

<!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>

Pode carregar a página num navegador e colocá-la em modo de edição selecionando Editar no controlo de lista suspensa do Modo de Visualização . Podes clicar no menu de verbos (a seta para baixo) na barra de título do TextDisplayWebPart controlo e clicar em Editar para editar o controlo. Quando a interface de utilizador de edição (UI) está visível, pode ver todos os EditorPart controlos. Clica no botão Criar EditorParteColeção para ver os efeitos nos dois EditorPart controlos que são adicionados ao EditorPartCollection objeto.

Observações

O EditorPartCollection construtor inicializa uma instância da EditorPartCollection classe e passa uma coleção de EditorPart controlos. Isto é uma sobrecarga do EditorPartCollection construtor que podes usar para criar um novo EditorPartCollection objeto e adicionar EditorPart controlos a ele.

Apesar de a EditorPartCollection instância criada pelo construtor ser apenas de leitura, ainda pode aceder programaticamente aos controlos individuais EditorPart na coleção e chamar as suas propriedades e métodos.

Um cenário comum para usar o EditorPartCollection construtor seria se quiser realizar alguma operação em lote num conjunto completo de EditorPart controlos, como alterar o conteúdo, a aparência ou a posição de um grupo relacionado deles.

Outro cenário comum para usar o EditorPartCollection construtor é desenvolver controlos personalizados EditorPart que queiras associar a um controlo de servidor, para que os utilizadores possam editar propriedades personalizadas no teu controlo. Neste cenário, o controlo do seu servidor deve implementar a IWebEditable interface e, como parte dessa tarefa, deve implementar o CreateEditorParts método. Nesse método, para permitir que os controlos personalizados EditorPart editem o controlo do seu servidor, deve adicionar os EditorPart controlos a uma ICollection instância, como um ArrayList objeto. Depois podes passar a coleção de EditorPart controlos ao EditorPartCollection construtor para criar um novo EditorPartCollection objeto, que a EditorZoneBase zona usa para configurar todos os controlos e iniciar o processo de edição.

Ver também

Aplica-se a

EditorPartCollection(EditorPartCollection, ICollection)

Inicializa uma nova instância da EditorPartCollection classe passando uma EditorPartCollection coleção de EditorPart controlos e uma ICollection coleção de controlos adicionais 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)

Parâmetros

existingEditorParts
EditorPartCollection

Um ICollection dos controlos existentes EditorPart numa zona.

editorParts
ICollection

Um ICollection de EditorPart controlos não numa zona, mas criados programaticamente.

Ver também

Aplica-se a