Compartilhar via


Controlarar de ListObject

Se aplica a

As informações contidas neste tópico se aplicam apenas às especificado Ferramentas do Visual Studio para o Office projetos e as versões do Microsoft Office.

Projetos de nível de documento

  • O Excel 2007

  • O Excel 2003

Projetos de nível de aplicativo

  • O Excel 2007

For more information, see Recursos disponíveis pelo aplicativo e o tipo de projeto.

O Controlarar de ListObject é uma lista que expõe eventos e pode ser Ligado aos dados.Quando você Adicionar uma lista para uma planilha, Ferramentas do Visual Studio para o Office cria um Controlarar de ListObject que você pode programar diretamente sem ter que percorrer o modelo de objeto do Microsoft Office Excel.

Criando o Controlarar

Você pode adicionar controles de ListObject a uma planilha do Microsoft Office Excel durante o design ou em tempo de execução em personalizações em nível de documento.Iniciando no Visual Studio 2008 Serviço Pack 1 (SP1), você pode adicionar controles de ListObject em um suplemento do nível de aplicativo em tempo de execução.For more information, see Como: Adicionar controles de ListObject a planilhas.

Observação:

Por padrão, d objetos da lista ynamically criado não são persistentes na planilha como Host controla quando a planilha é fechada.Para obter mais informações, consulte Adicionar controles a documentos do Office em tempo de execução.

Vinculando dados ao controle

Um Controlarar de ListObject suporta ligação de dados simples e complexos.O Controlarar de ListObject pode ser Ligado a uma Origem de dados usando as propriedades de DataSource e DataMember no tempo de design ou o método SetDataBinding em tempo de execução.

Observação:

O ListObject é atualizado automaticamente quando ele está Ligado a uma Origem de dados, como um DataTable, que gera eventos quando os dados forem alterados.Se você ligar o ListObject a uma Origem de dados que não dispara eventos quando os dados forem alterados, você deve chamar o método de RefreshDataRow para atualizar o RefreshDataRows ou ListObject.

Quando você Adicionar um ListObject a uma célula da planilha, mapeando um elemento do esquema repetido a essa célula, Ferramentas do Visual Studio para o Office automaticamente mapeia a ListObject para o dataset gerado.No entanto, a ListObject não é automaticamente Ligado aos dados.Você pode adotar medidas para ligar o ListObject para o dataset no tempo de design ou em tempo de execução em um projeto de nível de documento. Iniciando no SP1, você pode programaticamente acoplar o ListObject para o dataset em tempo de execução em um aplicativo-nível Adicionar - in.

Como os dados são separados da ListObject, você deve adicionar e remover dados através do dataset Ligado e não diretamente através o ListObject.Se os dados no dataset Ligado são atualizados por meio de qualquer mecanismo, o Controlarar de ListObject automaticamente reflete as alterações.For more information, see Vinculando dados a controles.

Rapidamente você pode preencher um Controlarar de ListObject pela vinculação a ListObject a uma Origem de dados.Se você editar os dados em um ligados a dados ListObject, as alterações são automaticamente feitas na Origem de dados.Se você deseja preencher um ListObject e, em seguida, permitir que o usuário Alterar os dados a ListObject sem modificar a Origem de dados, você pode usar o método Disconnect para desanexar o ListObject da Origem de dados.For more information, see Como: Preencher ListObject controles com dados.

Observação:

Não há suporte para ligação de dados em sobreposição ListObject controls.

Melhorar o desempenho no ListObject controles

Ler um arquivo XML em um Controlarar Ligado a dados ListObject tende a ser mais lento se você Ligar o Controlarar pela Primeiro vez e, em seguida, chame ReadXml para preencher o dataset.Para melhorar o desempenho, chame ReadXml antes de você Ligar o Controlarar.

Desconectando ListObject controles de Origem de dados

Depois de preencher um Controlarar de ListObject com dados vinculando-o a uma Origem de dados, você pode Desconectar-lo para que as modificações feitas nos dados no objeto de lista não afetam a Origem de dados.For more information, see Como: Preencher ListObject controles com dados.

Formatação

Formatação que podem ser aplicadas a um Microsoft.Office.Interop.Excel.ListObject pode ser aplicado a um Controlarar de Microsoft.Office.Tools.Excel.ListObject.Isso inclui as bordas, fontes, Formatarar de número e estilos.Os usuários finais podem reorganizar colunas em um ligados a dados ListObject, e essas alterações serão ser conduzidas com o documento, desde que o ListObject foi adicionado ao documento em tempo de design.A Avançar vez que o documento for aberto, o objeto da lista será ligado à mesma Origem de dados, mas a ordem das colunas refletirá as alterações dos usuários.

Adicionando e removendo colunas em tempo de execução

Manualmente você não pode adicionar ou remover colunas em um Controlarar Ligado a dados ListObject em tempo de execução.Se um usuário final tentar excluir uma coluna, imediatamente será restaurado e quaisquer colunas Adicionados serão removidas.Portanto, é importante Gravar código para explicar aos usuários por que não é possível executar essas ações em um ListObject está Ligado a dados.Ferramentas do Visual Studio para o Office fornece vários eventos um ListObject relacionados à ligação de dados.Por exemplo, você pode usar o evento OriginalDataRestored para avisar os usuários que os dados que tentou excluir não podem ser excluídos e foi restaurados.

Adicionando e removendo linhas em tempo de execução

Manualmente você pode adicionar e remover linhas em um Controlarar Ligado a dados ListObject, desde que a Origem de dados permite a adição de Novo linhas e não é somente leitura.Você pode Gravar código contra eventos como a BeforeAddDataBoundRow para validar os dados, ou o ErrorAddDataBoundRow para tentar novamente após um erro foi corrigido.

Para obter mais informações, consulte Como: Validar dados quando uma Novo linha é Adicionado a um Controlarar de ListObject e Como: Identificador de erros quando uma Novo linha é Adicionado a um Controlarar de ListObject.

Renomeando controles de ListObject no Excel 2007

O Excel 2007 permite que os usuários alterar o nome de tabelas do Excel em tempo de execução, usando a guia de design.No entanto, o Controlarar de ListObject não dá suporte a esse recurso.Se um usuário tentar renomear uma tabela do Excel que corresponde a um ListObject, o nome da tabela Excel será revertida automaticamente para o nome original quando a pasta de trabalho é salva.

Observação:

De listas do Excel são chamados de tabelas do Excel no Excel 2007.

Eventos

Os eventos a seguir estão disponíveis para o Controlarar de ListObject:

Consulte também

Tarefas

Como: Adicionar controles de ListObject a planilhas

Como: Redimensionar controles ListObject

Como: Validar dados quando uma Novo linha é Adicionado a um Controlarar de ListObject

Como: Identificador de erros quando uma Novo linha é Adicionado a um Controlarar de ListObject

Como: Mapear ListObject colunas para dados

Como: Preencher ListObject controles com dados

O Excel Adicionar - no exemplo de controles dinâmicos

Como: Preencher planilhas com dados de um banco de dados

Conceitos

Noções básicas sobre ListObject coluna e linha de ordem de persistência

Vinculando dados a controles

Estendendo os documentos do Word e Excel pastas de trabalho no nível de aplicativo Adicionar-ins em tempo de execução

Desenvolvimento de Adicionar-in de aplicativo-nível do Excel

Adicionar controles a documentos do Office em tempo de execução

Limitações através de programação de itens de host e controles de host

Outros recursos

Controles de host do Excel

Controles de host do Word

Controles em documentos do Office

Date

History

Motivo

De 2008 de julho

Informações sobre o uso de controles de objeto de lista em um suplemento do nível de aplicativo Adicionados.

Alteração de recurso do SP1.