WebPartManager.CopyWebPart(WebPart) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Usado pelo conjunto de controlos Web Parts para criar uma cópia de um WebPart ou controlo de servidor com o propósito de adicionar o controlo a uma página Web.
protected:
virtual System::Web::UI::WebControls::WebParts::WebPart ^ CopyWebPart(System::Web::UI::WebControls::WebParts::WebPart ^ webPart);
protected virtual System.Web.UI.WebControls.WebParts.WebPart CopyWebPart(System.Web.UI.WebControls.WebParts.WebPart webPart);
abstract member CopyWebPart : System.Web.UI.WebControls.WebParts.WebPart -> System.Web.UI.WebControls.WebParts.WebPart
override this.CopyWebPart : System.Web.UI.WebControls.WebParts.WebPart -> System.Web.UI.WebControls.WebParts.WebPart
Protected Overridable Function CopyWebPart (webPart As WebPart) As WebPart
Parâmetros
Devoluções
A WebPart para ser adicionado a uma página.
Observações
Não podes chamar o CopyWebPart método diretamente do teu código. Este método é chamado internamente pelo WebPartManager controlo como parte do processo de adicionar um novo controlo dinâmico WebPart ou de servidor a uma página. Um controlo dinâmico é adicionado a uma página programaticamente ou através da interface de utilizador (UI) do Web Parts, por exemplo, quando um utilizador adiciona um controlo a partir de um catálogo de controlos, em oposição a um controlo estático, que é declarado diretamente na marcação de uma página.
Note
O método pode ser sobreposto numa classe derivada se os programadores quiserem permitir que o método gere cenários adicionais de cópia de controlo. Para mais detalhes, consulte a secção Notas aos Herdeiros.
Quando um novo controlo dinâmico é adicionado, se for um WebPart controlo, o CopyWebPart método devolve uma nova instância do controlo. Se o controlo adicionado for outro tipo de controlo de servidor (como um controlo de utilizador, um controlo personalizado ou um controlo ASP.NET), o controlo já terá sido envolto com um objeto GenericWebPart pelo conjunto de controlo Web Parts. Quando o CopyWebPart método encontra um GenericWebPart controlo, devolve uma nova instância do GenericWebPart controlo com uma nova instância do controlo filho envolvida dentro dele.
Quando o CopyWebPart método cria uma nova cópia de um controlo para devolver, também redefine os valores de todas as propriedades para os valores padrão. Note que, se quiser preservar os valores das propriedades personalizáveis e tê-las copiadas para a nova instância de controlo, deve chamar também o CopyPersonalizationState método. O passo final realizado pelo CopyWebPart método é chamá-lo CreateDynamicWebPartID para obter um novo ID para o controlo.
Note
Como o método obtém um novo ID para um controlo copiado, não deve depender de referenciar um controlo dinâmico que é adicionado a uma página pelo seu ID original. Em vez disso, deve referenciar a nova instância do controlo devolvido pelo método.
Notas para Herdeiros
O método é declarado de virtual forma a que os programadores possam herdar da WebPartManager classe, sobrepor o método e prever cenários adicionais em que este poderia criar cópias dos controlos. Por exemplo, o método pode opcionalmente receber como entrada um controlo que tenha sido serializado num ficheiro XML. O método podia desserializar o XML (se existir), e depois chamar o método base para tratar os casos existentes e devolver uma nova instância de um WebPart controlo.