Demonstra Passo a passo: Programação contra eventos de um Controlarar NamedRange
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. Tipo de Projeto
Versão do Microsoft Office
For more information, see Recursos disponíveis pelo aplicativo e o tipo de projeto. |
Esta explicação passo a passo demonstra como adicionar um Controlarar de NamedRange a uma planilha do Microsoft Office Excel e programar em seus eventos usando Ferramentas do Visual Studio para o Office.
Durante este explicação passo a passo, você aprenderá como:
Adicionar um Controlarar de NamedRange a uma planilha.
Programa contra NamedRange eventos de Controlarar.
Teste seu projeto.
Observação: |
---|
Seu computador pode mostrar diferentes nomes ou localizações para alguns dos elementos de interface do usuário do Visual Studio nas instruções a seguir.A edição do Visual Studio que você possui e as configurações que você usa determinam esses elementos.Para obter mais informações, consulte Configurações do Visual Studio. |
Pré-requisitos
Para concluir esta explicação passo a passo, será necessário:
Ferramentas do Visual Studio para o Office (um componente opcional do O Visual Studio 2008 Professional e Visual Studio Team System).
O Microsoft Office Excel 2003 ou Microsoft Office Excel 2007.
Criando o projeto
Nesta etapa, você irá criar um projeto de pasta de trabalho do Excel usando Ferramentas do Visual Studio para o Office.
Para criar um novo projeto
Criar um projeto de pasta de trabalho do Excel com o nome Meu nome intervalo de eventos.Certifique-se de que Criar um documento novo está Selecionadoda.For more information, see Como: Criar o Visual Studio Tools para projetos do Office.
O Visual Studio abre a Novo pasta de trabalho do Excel no designer e adiciona o projeto Meus eventos de intervalo nomeado Gerenciador de Soluções.
Adicionar texto e nomeados intervalos para a planilha
Como os controles de host são estendidos objetos do Office, você pode adicioná-los ao seu documento da mesma maneira você deve adicionar o objeto nativo.Por exemplo, você pode adicionar um Controlarar de NamedRange do Excel para uma planilha Abrindo o menu de inserir, apontando para Nomee escolhendo Definir.Você também pode adicionar um Controlarar de NamedRange arrastando-o de do Caixa de Ferramentas para a planilha.
Nesta etapa, você irá adicionar dois controles de intervalo nomeado para a planilha usando a caixa de ferramentas e, em seguida, adicionar texto a ela.
Para adicionar um intervalo para a sua planilha
Verifique se a pasta de trabalho Meu Events.xls de intervalo nomeado Abrir no designer do Visual Studio, com Sheet1 exibido.
Na guia Excel controles da caixa de ferramentas, arraste um controle NamedRange para a célula A1 em Sheet1.
A caixa de diálogo Adicionar NamedRange Controlar aparece.
Verifique se $ A $ 1 aparece na caixa de texto editável, e que de A1 célula está Selecionadoda.Se não estiver, clique em célula A1 para Selecionar-lo.
Clique em OK.
Célula A1 torna-se um intervalo nomeado namedRange1.Não há nenhuma indicação visível na planilha, mas namedRange1 aparece na caixa Nome (localizado logo acima da planilha na Esquerda lado) quando a célula A1 é selecionado.
Adicionar NamedRange outro Controlarar para a célula B3.
Verifique se $ B $ 3 aparece na caixa de texto editável, e que de B3 célula está Selecionadoda.Se não estiver, clique em célula B3 para Selecionar-lo.
Clique em OK.
Célula B3 torna-se um intervalo nomeado namedRange2.
Para adicionar texto a sua planilha
Na célula A1, tipo o seguinte texto:
Este é um exemplo de um Controlarar NamedRange.
Na célula A3 (à esquerda do namedRange2), tipo o seguinte texto:
Eventos:
As seções a seguir, você Gravará código que insere texto no namedRange2 e modifica as propriedades do Controlarar namedRange2 em resposta à BeforeDoubleClick, Changee SelectionChange eventos de namedRange1.
Adicionando código para responder para o evento BeforeDoubleClick
Para inserir texto em NamedRange2 com base no evento BeforeDoubleClick
Em Gerenciador de Soluções, clique com o botão direito do mouse em Sheet1.vb ou Sheet1.cs e Selecionar Exibir Code.
Adicionar código para o manipulador de eventos namedRange1_BeforeDoubleClick se parece com o seguinte:
Private Sub NamedRange1_BeforeDoubleClick( _ ByVal Target As Microsoft.Office.Interop.Excel.Range, ByRef Cancel As Boolean) _ Handles NamedRange1.BeforeDoubleClick With Me.NamedRange2 .Value2 = "The BeforeDoubleClick event occurred." .Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red) .Font.Italic = True End With End Sub
private void namedRange1_BeforeDoubleClick( Microsoft.Office.Interop.Excel.Range Target, ref bool Cancel) { this.namedRange2.Value2 = "The BeforeDoubleClick event occurred."; this.namedRange2.Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red); this.namedRange2.Font.Italic = true; }
Em C#, você precisa adicionar manipuladores de eventos para o intervalo nomeado como mostrado no evento Startup abaixo.Para obter informações sobre a criação de manipuladores de eventos, consulte Como: Criar manipuladores de eventos no Visual Studio Tools for Office.
this.namedRange1.BeforeDoubleClick += new Microsoft.Office.Interop.Excel. DocEvents_BeforeDoubleClickEventHandler(namedRange1_BeforeDoubleClick); this.namedRange1.Change += new Microsoft.Office.Interop.Excel. DocEvents_ChangeEventHandler(namedRange1_Change); this.namedRange1.SelectionChange +=new Microsoft.Office.Interop.Excel. DocEvents_SelectionChangeEventHandler(namedRange1_SelectionChange);
Adicionando código para responder para o evento de Alterar
Para inserir texto em namedRange2 baseia o evento Alterar
Adicionar código para o manipulador de eventos NamedRange1_Change se parece com o seguinte:
Private Sub NamedRange1_Change(ByVal Target As Microsoft.Office.Interop.Excel.Range) _ Handles NamedRange1.Change With Me.NamedRange2 .Value2 = "The Change event occurred." .Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Blue) .Font.Italic = False End With End Sub
private void namedRange1_Change(Microsoft.Office.Interop.Excel.Range Target) { this.namedRange2.Value2 = "The Change event occurred."; this.namedRange2.Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Blue); this.namedRange2.Font.Italic = false; }
Observação: Porque insere Duplo em uma célula em um intervalo do Excel Modo de Edição, um Evento de Change ocorre quando a seleção é movida fora do intervalo, mesmo que nenhuma alteração ao texto ocorreu.
Adicionando código para responder para o evento SelectionChange
Para inserir texto em namedRange2 com base no evento SelectionChange
Adicionar código para o manipulador de eventos NamedRange1_SelectionChange se parece com o seguinte:
Private Sub NamedRange1_SelectionChange(ByVal Target As Microsoft.Office.Interop.Excel.Range) _ Handles NamedRange1.SelectionChange With Me.NamedRange2 .Value2 = "The SelectionChange event occurred." .AddComment("SelectionChange always occurs before BeforeDoubleClick.") .Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Black) End With End Sub
private void namedRange1_SelectionChange(Microsoft.Office.Interop.Excel.Range Target) { this.namedRange2.Value2 = "The SelectionChange event occurred."; this.namedRange2.AddComment("SelectionChange always occurs before BeforeDoubleClick."); this.namedRange2.Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Black); }
Observação: Como clicar Duplo em uma célula em um intervalo do Excel faz a seleção para mover para o intervalo, um Evento SelectionChange ocorre antes que o evento BeforeDoubleClick ocorre.
Testando o aplicativo
Agora você pode testar sua pasta de trabalho para verificar que o texto que descreve os eventos de um Controlarar de NamedRange é inserido em outro intervalo nomeado quando os eventos são gerados.
Para testar seu documento
Pressionarionar F5 para executar seu projeto.
Posicione o cursor no namedRange1e verifique se que o texto sobre o evento SelectionChange é inserido e que um comentário é inserido na planilha.
Clique Duplo em namedRange1e verifique se que o texto sobre eventos de BeforeDoubleClick é inserido com texto vermelho em itálico em namedRange2.
Clique fora do namedRange1 e Anotação que o evento de Alterar ocorre quando você sair Modo de Editar mesmo que não foi feita nenhuma Alterar no texto.
Alterar o texto dentro namedRange1.
Clique fora do namedRange1e verifique se o texto em relação ao evento Change é inserido com o texto azul em namedRange2.
Próximas etapas
Esta explicação passo a passo mostra as noções básicas de programação em eventos de um Controlarar de NamedRange.Aqui estão algumas tarefas que podem vie em seguida:
Implantar o projeto.For more information, see Implantar soluções do Office.
Programação em eventos de controles de Exibir de XMLNode.For more information, see Demonstra Passo a passo: Alterar o painel de ações de acordo com para o contexto de usuário.
Consulte também
Tarefas
Como: Excluir NamedRange controles em tempo de design
Como: Redimensionar controles NamedRange
Como: Adicionar controles NamedRange a planilhas
Como: Criar manipuladores de eventos no Visual Studio Tools for Office
Conceitos
Itens de host e Visão geral sobre controles de host
Limitações através de programação de itens de host e controles de host