Compartilhar via


EditorPartCollection Construtores

Definição

Inicializa uma nova instância da classe EditorPartCollection.

Sobrecargas

EditorPartCollection()

Inicializa uma nova instância vazia da classe EditorPartCollection.

EditorPartCollection(ICollection)

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

EditorPartCollection(EditorPartCollection, ICollection)

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

EditorPartCollection()

Inicializa uma nova instância vazia da classe EditorPartCollection.

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

Comentários

O EditorPartCollection construtor inicializa uma instância vazia da EditorPartCollection classe . Essa sobrecarga do construtor é usada internamente pela EditorZone classe em seu CreateEditorParts método para criar um objeto de coleção vazio. Em seguida, a zona cria instâncias de todos os EditorPart controles declarados no modelo de zona filho e usa um método interno para adicioná-los à coleção.

Não é possível usar essa sobrecarga do EditorPartCollection construtor para criar uma nova instância do EditorPartCollection e adicionar EditorPart controles a ele. Você deve usar uma das outras sobrecargas para o EditorPartCollection construtor.

Confira também

Aplica-se a

EditorPartCollection(ICollection)

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

Parâmetros

editorParts
ICollection

Um ICollection de controles de EditorPart.

Exemplos

O exemplo de código a seguir demonstra como criar um personalizado EditorPartCollection e, embora a coleção seja somente leitura, ainda execute uma operação em lote para alterar os controles individuais EditorPart na coleção. Para obter o código completo necessário para executar o exemplo, consulte a seção Exemplo da visão geral da EditorPartCollection classe.

O código no Button1_Click evento cria um ArrayList objeto , adiciona dois dos três EditorPart controles na página ao objeto e cria um novo EditorPartCollection objeto usando o EditorPartCollection construtor . Ele também demonstra como você pode fazer alterações nos controles subjacentes EditorPart , mesmo que a coleção seja somente 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>

Você pode carregar a página em um navegador e alternar a página para o modo de edição selecionando Editar no controle de lista suspensa Modo de Exibição . Você pode clicar no menu de verbos (a seta para baixo) na barra de título do TextDisplayWebPart controle e clicar em Editar para editar o controle. Quando a interface do usuário (interface do usuário) de edição estiver visível, você poderá ver todos os EditorPart controles. Clique no botão Criar EditorPartCollection para ver os efeitos nos dois EditorPart controles adicionados ao EditorPartCollection objeto .

Comentários

O EditorPartCollection construtor inicializa uma instância da EditorPartCollection classe e passa em uma coleção de EditorPart controles. Essa é uma sobrecarga do EditorPartCollection construtor que você pode usar para criar um novo EditorPartCollection objeto e adicionar EditorPart controles a ele.

Embora a EditorPartCollection instância criada pelo construtor seja somente leitura, você ainda pode acessar os controles individuais EditorPart na coleção programaticamente e chamar suas propriedades e métodos.

Um cenário comum para usar o EditorPartCollection construtor seria se você quisesse executar alguma operação em lote em um conjunto inteiro de EditorPart controles, como alterar o conteúdo, a aparência ou a posição de um grupo relacionado deles.

Outro cenário comum para usar o construtor é o EditorPartCollection desenvolvimento de controles personalizados EditorPart que você deseja associar a um controle de servidor, para que os usuários possam editar propriedades personalizadas em seu controle. Nesse cenário, o controle do servidor deve implementar a IWebEditable interface e, como parte dessa tarefa, ele deve implementar o CreateEditorParts método . Nesse método, para habilitar os controles personalizados EditorPart para editar o controle do servidor, você deve adicionar os EditorPart controles a uma ICollection instância, como um ArrayList objeto . Em seguida, você pode passar a coleção de EditorPart controles para o EditorPartCollection construtor para criar um novo EditorPartCollection objeto, que a EditorZoneBase zona usa para configurar todos os controles e iniciar o processo de edição.

Confira também

Aplica-se a

EditorPartCollection(EditorPartCollection, ICollection)

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

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 controles de EditorPart existentes em uma zona.

editorParts
ICollection

Um ICollection de controles EditorPart não em uma zona, mas criado programaticamente.

Confira também

Aplica-se a