Você está na página 1de 397

NDICE

CONTROLE DE CDIGO FONTE PARA O VISUAL STUDIO......................................................................... 6


INTRODUO AO CONTROLE DE ORIGEM ................................................................................................................... 6
O QUE H DE NOVO NO CONTROLE DE ORIGEM PARA O VISUAL STUDIO ................................................................. 13
EXECUO DE TAREFAS DE CONTROLE DE ORIGEM ............................................................................................... 14
COMO: ADICIONAR UM PROJETO AO CONTROLE DE ORIGEM .................................................................................. 14
COMO: ACOPLAR OU DESACOPLAR UMA SOLUO OU PROJETO ............................................................................ 15
COMO: ALTERAR O LOCAL DA PASTA DE TRABALHO ............................................................................................. 16
COMO CONECTAR OU DESCONECTAR UMA SOLUO OU UM PROJETO ..................................................................... 16
COMO: COPIAR UM ITEM SOB CONTROLE DE ORIGEM ............................................................................................. 17
COMO: EXCLUIR UM ITEM CONTROLADO POR ORIGEM ........................................................................................... 18
COMO ATIVAR RECUPERAO AUTOMTICA........................................................................................................... 19
COMO DESATIVAR A CRIAO DA PASTA <SOLUTIONNAME>.ROOT ........................................................................ 19
COMO: ATIVAR CHECK-INS AUTOMTICOS ........................................................................................................... 19
COMO: DESATIVAR CHECK-OUTS AUTOMTICOS ................................................................................................... 20
COMO: ATIVAR OU DESATIVAR CONTROLE DE ORIGEM.......................................................................................... 20
COMO: EXCLUIR UM ARQUIVO DE CONTROLE DE ORIGEM ...................................................................................... 21
COMO: MOVER UMA RAIZ DE LIGAO DE PROJETO .............................................................................................. 21
COMO: MOVER UM ITEM CONTROLADO POR FONTE ............................................................................................... 22
COMO: ABRIR UM PROJETO OU SOLUO DO CONTROLE DE ORIGEM ..................................................................... 22
COMO: RENOMEAR UM ITEM CONTROLADO POR ORIGEM ...................................................................................... 23
COMO: DEFINIR OPES DE PLUG-IN...................................................................................................................... 24
COMO: TROCAR PLUG-INS DE CONTROLE DE ORIGEM:............................................................................................. 25
COMO: EXIBIR UMA LISTA DE ARQUIVOS COM CHECK-OUT.................................................................................... 25
REFERNCIA A INTERFACE DO USURIO DO CONTROLE DE ORIGEM........................................................................ 25
CAIXA DE DILOGO CHANGE SOURCE CONTROL .................................................................................................... 26
CAIXA DE DILOGO CHECK IN (CONTROLE DE CDIGO FONTE) ............................................................................. 27
CHECK-OUT PARA A CAIXA DE DILOGO EDIT (CONTROLE DE ORIGEM).................................................................. 28
CAIXA DE DILOGO GET (CONTROLE DE ORIGEM)................................................................................................... 29
JANELA DE CHECK-INS PENDENTES ......................................................................................................................... 30
GUIAS DE PLUG-IN PARA CONTROLE DE ORIGEM (CAIXA DE DILOGO OPTIONS)..................................................... 31
CAIXA DE DILOGO SOURCE CONTROL ................................................................................................................... 34
CAIXA DE DILOGO UNDO CHECKOUT (CONTROLE DE CDIGO FONTE)................................................................. 35
CONFIGURAES DO VISUAL STUDIO .......................................................................................................... 36
COMO: ALTERAR CONFIGURAES SELECIONADAS ................................................................................................ 37
TRABALHANDO COM CONFIGURAES.................................................................................................................... 38
COMO: COMPARTILHAR CONFIGURAES ENTRE COMPUTADORES ....................................................................... 38
COMO: ESPECIFICAR CONFIGURAES PARA UMA EQUIPE ...................................................................................... 40
IMPORT AND EXPORT SETTINGS WIZARD................................................................................................................ 40
ESCOLHA CONFIGURAES PARA EXPORTAR, IMPORTAR E EXPORTAR CONFIGURAES ASSISTENTE .................... 41
NOMEIE O ARQUIVO DE CONFIGURAES, IMPORTAR E EXPORTAR CONFIGURAES ASSISTENTE ......................... 41
SALVAR CONFIGURAES ATUAIS, IMPORTAR E ASSISTENTE PARA EXPORTAO CONFIGURAES ....................... 41
ESCOLHA CONFIGURAES PARA IMPORTAR, IMPORTAR E ASSISTENTE CONFIGURAES EXPORTAO ............... 42
ESCOLHA UM COLEO DE CONFIGURAES PARA IMPORTAR, IMPORTAR E ASSISTENTE CONFIGURAES
EXPORTAO .......................................................................................................................................................... 42
<TASK> COMPLETE, IMPORT AND EXPORT SETTINGS WIZARD ............................................................................... 43
WALKTHROUGHS VISUAL C# ........................................................................................................................... 44
EXPLICAO PASSO A PASSO: CRIANDO UM XML WEB SERVICES USANDO VISUAL BASIC OU VISUAL C# ........... 44
PASSO-A-PASSO: ACESSANDO UM XML WEB SERVICES UTILIZANDO VISUAL BASIC OU VISUAL C# ..................... 48
UM COMPONENTE COM VISUAL C# WALKTHROUGH: CRIAO .............................................................................. 53
TAREFAS COMUNS USANDO MARCAS INTELIGENTES EM CONTROLES FORMS WINDOWS FAZENDO WALKTHROUGH:
................................................................................................................................................................................ 57
COLEES DOS TIPOS PADRO COM O DESIGNERSERIALIZATIONVISIBILITYATTRIBUTE SERIALIZING
WALKTHROUGH:..................................................................................................................................................... 58
WALKTHROUGH: DEPURAO CONTROLES FORMS DO WINDOWS PERSONALIZADOS EM TEMPO DE DESIGN ........... 61
CRIANDO UM CONTROLE DO WINDOWS FORMS QUE TAKES ADVANTAGE DOS RECURSOS DE TEMPO DE DESIGN
VISUAL STUDIO WALKTHROUGH:............................................................................................................................ 64
UM CONTROLE COMPOSTO COM VISUAL C# WALKTHROUGH: CRIAO ................................................................. 84
UM COMPONENTE MULTITHREADED SIMPLE COM VISUAL C# WALKTHROUGH: CRIAO ..................................... 92

Visual Studio

WALKTHROUGH: INHERITING A PARTIR DE UM CONTROLE DO WINDOWS FORMS COM VISUAL C# ...................... 100
EXPLICAES PASSO-A-PASSO DO VISUAL STUDIO .............................................................................. 104
WALKTHROUGHS DE APLICATIVOS CLIENTE RICH ................................................................................................ 104
WALKTHROUGH: CRIANDO UM APLICATIVO CLIENTE RICH COM MFC ................................................................. 105
WALKTHROUGHS APPLICATION DE FORMULRIOS DA WEB ........................................................... 114
EXPLICAO PASSO A PASSO: CRIANDO UMA PGINA WEB BSICA NO VISUAL WEB
DEVELOPER.......................................................................................................................................................... 115
PASSO-A-PASSO: ACESSO A DADOS BSICO EM PGINAS DA WEB................................................... 124
PASSO-A-PASSO: LIGAO DE DADOS PARA UM OBJETO CORPORATIVO PERSONALIZADO . 134
EXPLICAO PASSO A PASSO: DEPURAO DE PGINAS DA WEB NO VISUAL WEB
DEVELOPER.......................................................................................................................................................... 141
PASSO-A-PASSO: CRIANDO E USANDO PGINAS MESTRAS DO ASP.NET NO VISUAL WEB
DEVELOPER.......................................................................................................................................................... 148
PASSO-A-PASSO: PERSONALIZANDO UM SITE USANDO TEMAS NO VISUAL STUDIO.................. 159
EXPLICAO PASSO A PASSO: CRIANDO UMA PGINA WEB PARTS NO VISUAL WEB
DEVELOPER.......................................................................................................................................................... 165
EXPLICAO PASSO A PASSO: CRIANDO UM SITE WEB COM ASSOCIAO E LOGIN DE
USURIO (VISUAL STUDIO) ............................................................................................................................. 175
PASSO-A-PASSO: CRIANDO E USANDO UM SERVIO DA WEB ASP.NET NO VISUAL WEB
DEVELOPER.......................................................................................................................................................... 188
CRIANDO E ACESSANDO EXPLICAES PASSO A PASSO DE XML WEB SERVICES ..................... 196
EXPLICAO PASSO A PASSO: CRIANDO UM XML WEB SERVICES USANDO VISUAL BASIC OU
VISUAL C#.............................................................................................................................................................. 197
PASSO-A-PASSO: CRIANDO UM XML WEB SERVICE USANDO C++ E O CLR .................................... 202
WALKTHROUGH: CRIANDO UM SERVIO DA WEB XML USANDO ATL SERVER.......................... 207
PASSO-A-PASSO: ACESSANDO UM XML WEB SERVICE USANDO C++ E O CLR............................... 211
PASSO-A-PASSO: ACESSANDO UM XML WEB SERVICE USANDO C++................................................ 215
PASSO-A-PASSO: CRIANDO UM APLICATIVO DISTRIBUDO ................................................................ 220
CONTROLE DE CDIGO FONTE PARA O VISUAL STUDIO..................................................................... 228
INTRODUO AO CONTROLE DE ORIGEM ............................................................................................................... 228
O QUE H DE NOVO NO CONTROLE DE ORIGEM PARA O VISUAL STUDIO ............................................................... 235
EXECUO DE TAREFAS DE CONTROLE DE ORIGEM ............................................................................................. 236
COMO: ADICIONAR UM PROJETO AO CONTROLE DE ORIGEM ................................................................................ 236
COMO: ACOPLAR OU DESACOPLAR UMA SOLUO OU PROJETO .......................................................................... 237
COMO: ALTERAR O LOCAL DA PASTA DE TRABALHO ........................................................................................... 238
COMO CONECTAR OU DESCONECTAR UMA SOLUO OU UM PROJETO ................................................................... 238
COMO: COPIAR UM ITEM SOB CONTROLE DE ORIGEM ........................................................................................... 239
COMO: EXCLUIR UM ITEM CONTROLADO POR ORIGEM ......................................................................................... 240
COMO ATIVAR RECUPERAO AUTOMTICA......................................................................................................... 240
COMO DESATIVAR A CRIAO DA PASTA <SOLUTIONNAME>.ROOT ...................................................................... 241
COMO: ATIVAR CHECK-INS AUTOMTICOS ......................................................................................................... 241
COMO: DESATIVAR CHECK-OUTS AUTOMTICOS ................................................................................................. 242
COMO: ATIVAR OU DESATIVAR CONTROLE DE ORIGEM........................................................................................ 242
COMO: EXCLUIR UM ARQUIVO DE CONTROLE DE ORIGEM .................................................................................... 243
COMO: MOVER UMA RAIZ DE LIGAO DE PROJETO ............................................................................................ 243
COMO: MOVER UM ITEM CONTROLADO POR FONTE ............................................................................................. 244
COMO: ABRIR UM PROJETO OU SOLUO DO CONTROLE DE ORIGEM ................................................................... 244
COMO: RENOMEAR UM ITEM CONTROLADO POR ORIGEM .................................................................................... 245
COMO: DEFINIR OPES DE PLUG-IN.................................................................................................................... 246
COMO: TROCAR PLUG-INS DE CONTROLE DE ORIGEM:........................................................................................... 247
COMO: EXIBIR UMA LISTA DE ARQUIVOS COM CHECK-OUT.................................................................................. 247
REFERNCIA A INTERFACE DO USURIO DO CONTROLE DE ORIGEM...................................................................... 247

Visual Studio

CAIXA DE DILOGO CHANGE SOURCE CONTROL .................................................................................................. 247


CAIXA DE DILOGO CHECK IN (CONTROLE DE CDIGO FONTE) ........................................................................... 249
CHECK-OUT PARA A CAIXA DE DILOGO EDIT (CONTROLE DE ORIGEM)................................................................ 250
CAIXA DE DILOGO GET (CONTROLE DE ORIGEM)................................................................................................. 251
JANELA DE CHECK-INS PENDENTES ....................................................................................................................... 252
GUIAS DE PLUG-IN PARA CONTROLE DE ORIGEM (CAIXA DE DILOGO OPTIONS)................................................... 253
CAIXA DE DILOGO SOURCE CONTROL ................................................................................................................. 256
CAIXA DE DILOGO UNDO CHECKOUT (CONTROLE DE CDIGO FONTE)............................................................... 257
CONFIGURAES DO VISUAL STUDIO ........................................................................................................ 259
COMO: ALTERAR CONFIGURAES SELECIONADAS .............................................................................................. 260
TRABALHANDO COM CONFIGURAES.................................................................................................................. 261
COMO: COMPARTILHAR CONFIGURAES ENTRE COMPUTADORES ..................................................................... 261
COMO: ESPECIFICAR CONFIGURAES PARA UMA EQUIPE .................................................................................... 263
IMPORT AND EXPORT SETTINGS WIZARD.............................................................................................................. 263
ESCOLHA CONFIGURAES PARA EXPORTAR, IMPORTAR E EXPORTAR CONFIGURAES ASSISTENTE .................. 264
NOMEIE O ARQUIVO DE CONFIGURAES, IMPORTAR E EXPORTAR CONFIGURAES ASSISTENTE ....................... 264
SALVAR CONFIGURAES ATUAIS, IMPORTAR E ASSISTENTE PARA EXPORTAO CONFIGURAES ..................... 264
ESCOLHA CONFIGURAES PARA IMPORTAR, IMPORTAR E ASSISTENTE CONFIGURAES EXPORTAO ............. 265
ESCOLHA UM COLEO DE CONFIGURAES PARA IMPORTAR, IMPORTAR E ASSISTENTE CONFIGURAES
EXPORTAO ........................................................................................................................................................ 265
<TASK> COMPLETE, IMPORT AND EXPORT SETTINGS WIZARD ............................................................................. 266
GERENCIAR SOLUES, PROJETOS E ARQUIVOS................................................................................... 267
INTRODUO AO SOLUES, PROJETOS, E ITENS ................................................................................................... 267
PROPRIEDADES DE PROJETO (VISUAL STUDIO) ..................................................................................................... 269
GERENCIANDO PROPRIEDADES DE PROJETO COM O DESIGNER DE PROJETO ........................................................... 269
GERENCIANDO PROPRIEDADES DE APLICATIVO ..................................................................................................... 269
COMO: ESPECIFICAR INFORMAES DE ASSEMBLY.............................................................................................. 269
COMO ALTERAR UM NOME DE CONJUNTO: ............................................................................................................ 269
COMO: ALTERAR O NAMESPACE PARA UM APLICATIVO ....................................................................................... 270
COMO: ALTERAR O TIPO DE APLICATIVO ............................................................................................................. 270
COMO: ALTERAR O OBJETO DE INICIALIZAO PARA UM APLICATIVO ................................................................ 271
COMO: ESPECIFICA UM CONE DE APLICATIVO ..................................................................................................... 272
COMO: ATIVAR ESTILOS VISUAIS ........................................................................................................................ 272
COMO: ESPECIFICAR COMPORTAMENTO DE INSTNCIAS PARA UM APLICATIVO .................................................. 273
COMO: ATIVAR AUTENTICAO DE USURIO PERSONALIZADA ........................................................................... 274
COMO: ESPECIFICAR O COMPORTAMENTO DE DESLIGAMENTO PARA UM APLICATIVO ......................................... 274
GERENCIANDO REFERNCIAS ................................................................................................................................ 275
REFERNCIAS DE PROJETO .................................................................................................................................... 275
SOLUCIONANDO PROBLEMAS DE REFERNCIAS QUEBRADAS ................................................................................. 276
COMO: ADICIONAR OU REMOVER REFERNCIAS NO VISUAL STUDIO .................................................................. 278
COMO: ADICIONAR OU REMOVER NAMESPACES IMPORTADOS............................................................................. 280
COMO: REMOVER REFERNCIAS NO USADAS ................................................................................................... 281
COMO: DEFINIR A PROPRIEDADE COPY LOCAL (COPIAR LOCALMENTE) DE UMA REFERNCIA ........................... 282
GERENCIANDO RECURSOS DE APLICATIVO ........................................................................................................... 283
COMO: ADICIONAR OU REMOVER RECURSOS....................................................................................................... 283
COMO: ADICIONAR OU REMOVER RECURSOS DE SEQNCIA DE CARACTERES ..................................................... 285
COMO: EDITAR RECURSOS .................................................................................................................................. 286
COMO: EDITAR RECURSOS QUE SO SEQNCIAS DE CARACTERES ..................................................................... 288
COMO: ASSOCIAR UM EDITOR COM UM TIPO DE RECURSO ................................................................................... 289
RECURSOS VINCULADOS VERSUS RECURSOS INCORPORADOS .............................................................................. 290
COMO: CRIAR RECURSOS INCORPORADOS ........................................................................................................... 291
COMO: IMPORTAR OU EXPORTAR RECURSOS ....................................................................................................... 291
GERENCIANDO DEFINIES DO APLICATIVO.......................................................................................................... 292
CONFIGURAES DE APLICATIVO.......................................................................................................................... 293
COMO: ADICIONAR OU REMOVER CONFIGURAES DE APLICATIVO ................................................................... 295
COMO: ACESSAR EVENTOS DE CONFIGURAO ................................................................................................... 296
GERENCIANDO PROPRIEDADES DE PROJETO C# E J#.............................................................................................. 297
COMO DEFINIR PROPRIEDADES DO PROJETO (C#, J#):............................................................................................ 297
COMO: DEFINIR O CAMINHO DE REFERNCIA (C#, J#)........................................................................................ 298
COMO: DEFINIR AS PROPRIEDADES DE COMPILAO (C#, J#) ............................................................................ 299
COMO: ESPECIFICAR EVENTOS DE COMPILAO ................................................................................................. 300

Visual Studio

COMO: ADICIONAR E REMOVER REFERNCIAS NO VISUAL STUDIO (C#, J#)........................................................ 300


LOCAL E PROJETOS DA WEB .................................................................................................................................. 301
PROPRIEDADES DE ARQUIVO ................................................................................................................................. 302
TIPOS DE ARQUIVOS E EXTENSES DE ARQUIVOS NO VISUAL BASIC, VISUAL C#, E VISUAL J#............................. 304
MODELOS DE PROJETO PADRO NO VISUAL STUDIO ............................................................................................. 310
COMO: RESTAURAO DE MODELOS DE PROJETO PADRO ................................................................................. 311
MODELO CLASS LIBRARY ..................................................................................................................................... 312
MODELO DE APLICATIVO DE CONSOLE .................................................................................................................. 312
MODELO EMPTY PROJECT ..................................................................................................................................... 312
MODELO DE BIBLIOTECA DE CONTROLES DA WEB ................................................................................................ 313
MODELO DE APLICATIVO WINDOWS ..................................................................................................................... 313
MODELO DE CONTROLE DE BIBLIOTECA DO WINDOWS ........................................................................................ 313
MODELO DE SERVIO DO WINDOWS ..................................................................................................................... 313
REFERENCIANDO NAMESPACES E COMPONENTES ................................................................................................. 313
REFERNCIAS DE PROJETO .................................................................................................................................... 314
SOLUCIONANDO PROBLEMAS DE REFERNCIAS QUEBRADAS ................................................................................. 314
CONVENES DE NOMENCLATURA PARA ARQUIVO DE RECURSO .......................................................................... 316
RECURSOS XML ................................................................................................................................................... 317
RECURSOS NO-XML........................................................................................................................................... 317
CONFIGURANDO APLICATIVOS USANDO PROPRIEDADES DINMICAS ..................................................................... 317
INTRODUO A PROPRIEDADES DINMICAS (VISUAL STUDIO).............................................................................. 317
PERSONALIZAR E AUTOMATIZAR O AMBIENTE DE DESENVOLVIMENTO .................................... 323
PERSONALIZAR O AMBIENTE DE DESENVOLVIMENTO ............................................................................................ 323
COMO: PERSONALIZAR AJUDA DINMICA ............................................................................................................. 324
COMO PERSONALIZAR BARRAS DE FERRAMENTAS VISUAL STUDIO (): .................................................................. 327
COMO INICIAR FERRAMENTAS NO VISUAL STUDIO: .............................................................................................. 329
COMO PERSONALIZAR A SEO DE NOTCIAS DA PGINA INICIAR:........................................................................ 331
COMO ALTERAR O ITEM EXIBIDO EM INICIAR BACKUP DO AMBIENTE DE DESENVOLVIMENTO DO:........................ 331
TRABALHANDO COM CONFIGURAES.................................................................................................................. 332
COMO: COMPARTILHAR CONFIGURAES ENTRE COMPUTADORES ..................................................................... 340
COMO: ALTERAR CONFIGURAES SELECIONADAS .............................................................................................. 342
COMO: ESPECIFICAR CONFIGURAES PARA UMA EQUIPE .................................................................................... 342
GERENCIAMENTO DE JANELA ................................................................................................................................ 343
TIPOS JANELA........................................................................................................................................................ 343
COMO: ORGANIZAR E ANCORAR JANELAS ........................................................................................................... 345
HOW TO: WINDOWS IDE DE LISTA E ARQUIVOS ACTIVE..................................................................................... 349
CAIXA DE DILOGO DO WINDOWS VISUAL STUDIO ()........................................................................................... 350
CAIXA DE DILOGO COLUNAS ............................................................................................................................... 351
CAIXA DE DILOGO COLUNAS DE CLASSIFICAO ................................................................................................ 352
COMO: NAVEGAR DENTRO DO AMBIENTE DE DESENVOLVIMENTO INTEGRADO ................................................... 353
AUTOMAO E EXTENSIBILIDADE PARA VISUAL STUDIO...................................................................................... 353
ESTENDENDO O AMBIENTE VISUAL STUDIO .......................................................................................................... 353
O QUE H DE NOVO NO EXTENSIBILIDADE E AUTOMAO DO VISUAL STUDIO 2005............................................. 354
NOVOS MEMBROS DE AUTOMAO PARA VISUAL STUDIO 2005 ........................................................................... 356
PRTICAS RECOMENDADAS PARA SEGURANA NA AUTOMAO .......................................................................... 368
O ESPECTRO DE AUTOMAO VISUAL STUDIO ...................................................................................................... 369
ESCOLHENDO A ABORDAGEM DE AUTOMAO ADEQUADA .................................................................................. 371
FUNCIONAL GRUPOS DE AUTOMAO ................................................................................................................... 372
ACESSANDO O MODELO DE AUTOMAO POR USANDO MACROS ........................................................................... 373
CRIANDO ADD-INS E ASSISTENTES ........................................................................................................................ 374
REFERNCIA CONJUNTOS DE AUTOMAO E O OBJETO DTE2............................................................................... 375
CONTROLAR PROJETOS E SOLUES...................................................................................................................... 376
CRIANDO E CONTROLLING AMBIENTE WINDOWS.................................................................................................. 377
COMO CRIAR E ANEXAR A OUTRA INSTNCIA DO VISUAL STUDIO: ....................................................................... 378
INTRODUO EXTENSIBILIDADE DE PROJETO ..................................................................................................... 383
BEM-VINDO AO ASSISTENTE SUPLEMENTO, ASSISTENTE PARA ADICIONAR-IN VISUAL STUDIO ........................... 386
VISUAL STUDIO COMANDOS E OPES...................................................................................................... 389
JANELA DE COMANDO........................................................................................................................................... 391
JANELA IMMEDIATE .............................................................................................................................................. 393
LOCALIZAR / COMANDO CAIXA ............................................................................................................................. 395
COMANDOS GUIA, PERSONALIZAR CAIXA DE DILOGO VISUAL STUDIO ()............................................................ 396

Visual Studio

Visual Studio

Controle de Cdigo Fonte para o Visual


Studio
Sem sair do ambiente de desenvolvimento, voc pode gerenciar seus projetos
individuais e de equipe facilmente usando os recursos do controle de cdigo fonte
do Microsoft Visual Studio. O controle de cdigo fonte do Visual Studio permite que
voc:

Gerencie o acesso ao banco de dados. O controle de cdigo fonte do Visual


Studio fornece suporte ao acesso de arquivos compartilhados e individuais.
Tambm prov mecanismos para mesclagem de arquivos.

Recuperar verses sucessivas de itens sob controle de verso. A maioria dos


pacotes do controle de cdigo fonte do Visual Studio armazenam dados que
distinguem as diferentes verses de um item sob controle de verso.

Manter o histrico detalhado dos itens sob controle de verso. Muitos pacotes
fornecem mecanismos para armazenar e recuperar o histrico de um item,
por exemplo, data e hora de criao.

Trabalhar de modo colaborativo em projetos e solues. Com o


compartilhamento de arquivos, possvel que diferentes projetos e solues
compartilhem o mesmo item sob controle de verso. Alteraes feitas em um
item compartilhado so refletidas em todos os projetos e solues.

Automatizar as operaes de controle de cdigo fonte mais comuns. Por


exemplo, um pacote do controle de de cdigo fonte do Visual Studio pode
definir uma interface de linha de comando que oferea suporte a recursos
importantes do controle de cdigo fonte. Voc pode usar essa interface em
arquivos em lotes para automatizar as tarefas de controle de cdigo fonte
executadas regularmente.

Recuperar excluses acidentais. O controle de cdigo fonte do Visual Studio


fornece suporte a restaurao da ltima verso do arquivo em que foi
realizado o check-in.

Economizar espao em disco no pacote do controle de cdigo fonte e no


servidor associado.

Introduo ao controle de origem


O Visual Studio oferece suporte ao controle de origem usando a camada Visual
Studio Integration Protocol (VSIP) no seu Integrated Development Environment
(IDE). VSIP pode hospedar uma variedade de pacotes de controle de origem,
geralmente implementados como plug-ins escritos para os protocolos apropriados.
Um exemplo de um plug-in de controle de origem o plug-in SourceSafe LAN
suportado pelo Visual SourceSafe. Para obter detalhes do plug-in, consulte a ajuda
do Visual SourceSafe.
Observao
O Visual Studio trata pacotes de controle de origem como plug-ins, embora eles possam ser
implementados como outros tipos de mdulos de software.

Visual Studio

O controle de origem do Visual Studio simplesmente um ambiente para plug-ins


de controle de origem de terceiros. Por isso, sua funcionalidade s ativada pela
instalao de um plug-in. Para usar um plug-in de controle da origem de terceiros,
voc deve, geralmente, instalar o aplicativo de terceiros e/ou o(s) plug-in(s) de
controle de origem nos computadores cliente e servidor para seu site. Depois de
instalar como indicado pelas instrues de terceiros, sua funcionalidade estar
disponvel atravs do Visual Studio. As operaes que esto ativas so variveis,
dependendo do plug-in de controle de origem. Voc deve consultar a documentao
de terceiros para detalhes operacionais de pacotes especficos.
Consulte "Viso Geral (controle de origem)" na ajuda do Visual Studio para obter
detalhes de design de controle de origem no Visual Studio. Esta seo da Ajuda
tambm fornece todas as informaes que sero necessrias para desenvolver um
pacote de controle de origem de terceiros que seja compatvel com Visual Studio.
Noes bsicas de controle de origem suportados pelo Visual Studio
O suporte de controle de origem bsico no Visual Studio inclui a configurao de
plug-in de controle de origem e opes de ambiente, comutao de plug-in, acesso
ao banco de dados, versionamento e manipulao de projetos do Visual Studio,
solues e arquivos e metadados associados. O controle de origem no Visual Studio
tambm aplica protocolos do controle de acessos ao banco de dados, por exemplo,
o estilo de trabalho Lock-Modify-Unlock, no qual um usurio que quer modificar um
arquivo deve verific-lo exclusivamente.
importante lembrar que voc deve usar controle de origem em mecanismos do
Visual Studio para interagir com um plug-in de controle de origem. No use outras
aplicaes de cliente apresentadas por terceiros que forneam o plug-in, por
exemplo, Visual SourceSafe Explorer. O uso apropriado dos mecanismos de
controle de origem no Visual Studio garante que somente arquivos corretos sejam
adicionados ao controle de origem e que os arquivos de projeto e soluo do Visual
Studio sejam atualizados com os detalhes corretos do plug-in especfico.
Configurao de Plug-in de Controle de Origem e Comutao
O controle de origem do Visual Studio suporta configurao e comutao de plug-in
atravs da entrada Source Control na caixa de dilogo Options. Esta entrada
acessvel selecionando-se Options no menu Tools do Visual Studio. Voc usar a
caixa de dilogo Options para selecionar o plug-in que voc deseja utilizar para
controle de origem, e configurar as opes de ambiente para o plug-in.
Antes que voc e sua equipe possam aproveitar as vantagens dos recursos de
controle de origem no Visual Studio IDE, voc deve:

Determinar se qualquer plug-in de controle de origem est disponvel.

Se o plug-in de controle de origem que voc deseja usar no estiver


instalado em seu computador, instale o produto de terceiros que oferea
suporte ao plug-in e reinicie o Visual Studio para registr-lo.

Criar um banco de dados de controle de origem de acordo com a


funcionalidade do determinado plug-in.

Envie um link, com o local do banco de dados, para todos os membros da


equipe.

Acesso ao Banco de dados


Comandos bsicos de acesso ao banco de dados, por exemplo, Check Out e Add
to Source Control, esto disponveis no menu File do Visual Studio. No entanto,
esses comandos so ativados somente depois que voc tiver escolhido o plug-in de

Visual Studio

controle de origem que deseja usar. Quando voc usa um dos comandos bsicos de
acesso ao banco de dados, o plug-in que voc tiver escolhido chama a
correspondente funcionalidade de terceiros e/ou o ambiente para concluir a
operao associada.
Algumas operaes de acesso so ativadas somente com o plug-in selecionado,
enquanto outras operaes esto somente disponveis quando voc tambm tiver
selecionado um projeto do Visual Studio, soluo, ou arquivo no Solution Explorer
do Visual Studio. Por exemplo, voc pode usar um comando Add to Source
Control depois de ter escolhido um plug-in. Entretanto, para usar um comando
Check In, voc deve ter um item selecionado no Solution Explorer.
Manipulao de arquivo pelo controle de origem
Voc pode adicionar os seguintes arquivos ao controle de origem do Visual Studio:

Arquivos de soluo (*.SLN).

Arquivo de projeto, por exemplo, arquivos *.csproj, *.vbproj.

Arquivos de configurao de aplicativos com base em XML, usados para


controlar comportamento em tempo de execuo de um projeto do Visual
Studio.
Arquivos que voc no pode adicionar ao controle de origem incluem o
seguinte:

Arquivos de opo de soluo de usurio (*.suo).

Arquivos de opo de projeto de usurios, por exemplo, arquivos *..


csproj.user, *. vbproj.user

Arquivos de informao da Web, por exemplo, *.csproj.webinfo, *.


vbproj.webinfo, que controlam o local da raiz virtual de um projeto da Web

Criar arquivos de sada, por exemplo, arquivos *.dll e *.exe.

A propagao da alterao do espao para nome


O controle de origem do Visual Studio oferece suporte propagao de alterao
do espao para nome em plug-ins controle de origem. Propagao de alterao
aplica-se a operaes de excluso, renomeao e mudana de local. Quando voc
solicitar uma operao para qual a propagao de alterao estiver ativada, o plugin de controle de origem ir alterar a cpia de trabalho do item controlado por
fonte, a cpia principal no banco de dados, e as cpias de outros usurios, quando
voc fizer o check-in no item e os outros usurios o recuperarem.
Como Controle de Origem Trata Solues e Projetos
Quando voc adiciona uma soluo ou projeto ao controle de origem, a primeira
coisa que um plug-in de controle de origem deve fazer identificar uma raiz nica
para o item que est sendo adicionado. Esta raiz um caminho ao diretrio pai de
todas as pastas de trabalho e arquivos que compem a soluo ou projeto.
Uma raiz nica geralmente mapeia para um caminho fsico no disco. Contudo, se
uma soluo contm arquivos ou projetos que residem em mais de uma unidade de
disco, no h nenhuma pasta fsica qual uma raiz nica pode fazer o mapa. Uma
soluo pode mapear a unidade de disco, mas a raiz nica de um controle de
origem, no. Para apoiar esta situao, o controle de origem do Visual Studio apia
o conceito de uma raiz super-unificada. Este tipo da raiz um continer virtual e

Visual Studio

todos os projetos e os arquivos em uma soluo controlada por fonte esto


localizados abaixo dele.
Quando voc adiciona uma soluo usando um plug-in de controle de origem com
recursos avanados, o plug-in cria uma pasta raiz vazia de soluo no banco de
dados. Esta pasta conter todos os itens em uma soluo controlada por fonte. Por
padro, essa pasta < nomedasolucao >.root.
Observao
Quando voc adicionar um projeto nico ao controle de origem, a pasta .root no ser criada.
O uso de soluo raiz oferece os seguintes benefcios:

Menos prompt. A soluo raiz minimiza o nmero potencial de ligaes de


controle de origem para uma soluo e, assim, minimiza o nmero de avisos
aos usurios quando voc adiciona uma soluo para controle de origem e
executa outras tarefas.

Encapsulamento do projeto. A soluo raiz garante que todos os projetos em


uma soluo possam ser identificados como pertencentes ao mesmo
conjunto, mesmo quando uma ou mais projetos residam em diferentes
parties ou computadores.

Voc pode desativar a criao de pasta < nomedasolucao >.root, mas isso no
recomendvel. Para mais informaes, consulte COMO: desativar a criao da pasta
< nomedasolucao>.root.
Solues no Visual Studio so bem-formadas ou no. Uma soluo bem-formada
uma soluo para a qual a estrutura hierrquica no disco combina com a sua
estrutura no Solution Explorer. Todos os projetos em uma soluo bem-formada
so armazenados em subpastas da pasta soluo no disco. Se a soluo bemformada quando voc a adiciona ao controle de origem, o plug-in do controle de
origem cria uma pasta abaixo da pasta *.root para conter as cpias principais de
arquivo de soluo (*.sln) e arquivos de opo de soluo de usurios (*.suo) para
a soluo. Finalmente, o plug-in de controle de origem cria uma pasta sob a pasta
.sln para cada projeto adicional no banco de dados do controle de origem.
Se uma soluo no bem-formada, o plug-in do controle de origem cria uma
pasta para a soluo e para o seu projeto inicial. Em seguida, as pastas para cada
projeto adicional so criadas em paralelo com a pasta de soluo.
Modos de exibio de uma soluo ou projetos
Visual Studio fornece trs modos diferentes de exibio de uma soluo controlada
por origem ou projeto: design, controle de origem, e fsico. Muitas tarefas de
controle de origem so mais fceis de executar quando no h um mapeamento
um-para-um entre os elementos individuais desse modo de visualizao. Contudo,
se voc criar as suas solues e projetos e os acrescentar ao controle de origem
usando as configuraes padres do Visual Studio, suas solues e projetos no
sero, necessariamente, organizados do mesmo modo no disco como eles esto no
Solution Explorer e no banco de dados.
O modo design de uma soluo ou projeto, que voc v no Solution Explorer, um
retrato lgico do contedo de uma soluo ou projeto. Geralmente, o modo design
limpo e significativo. Arquivos desnecessrios esto ocultos e arquivos de vrios
locais fsicos diferentes so colocados em um continer de projeto nico.

Visual Studio

O modo de controle de origem de uma soluo ou projeto, que voc v em um


aplicativo autnomo, como Visual SourceSafe Explorer, tambm um modo de
exibio lgico de uma soluo ou projeto. Entretanto, o modo de exibio de
controle de origem no , necessariamente, um reflexo do modo de exibio lgico.
O modo de exibio fsico de uma soluo ou projeto, que voc v no Windows File
Explorer, provavelmente no refletir a estrutura hierrquica da lgica ou viso do
controle de origem.
As diretrizes a seguir podem ajud-lo a obter fidelidade organizacional entre o
modos de exibio de design, fsico e controle de origem de suas solues
controladas por fonte e projetos:

Primeiro, crie uma soluo em branco e adicione projetos a ela. Isso o ajuda
a manter a relao lgica pai-filho entre uma soluo e seus projetos no
armazenamento. Em seguida, quando voc adicionar a soluo ao controle
de origem, o modo de exibio de controle de origem e design ir espelhar a
hierarquia da soluo no disco.

Atribua a cada soluo um nome exclusivo e descritivo que se diferencia do


nome de cada um dos projetos contidos.

Evite adicionar arquivos de link para uma soluo ou projeto controlado por
fonte origem.

Se possvel, armazene todos os arquivos de uma soluo ou projeto em uma


unidade de disco.

Conexes de controle de origem e ligaes


O Visual Studio define uma conexo como uma ligao de dados ativa entre o
Visual Studio e um servidor de banco de dados. Quando voc adiciona uma soluo
ou projeto ao controle de origem, o plug-in de controle de origem copia o item e
todo o seu contedo do disco para o banco de dados. Uma pasta controle de origem
criada para cada pasta que contm um arquivo soluo ou projeto. Aps adicionar
o item, o plug-in de controle de origem vincula sua cpia de trabalho local de uma
soluo ou projeto sua verso no banco de dados.
Cada soluo controlada por origem tem, pelo menos, uma ligao de controle de
origem. No entanto, um item pode ter vrias ligaes e requerer vrias conexes
com o banco de dados. O nmero de vnculos e conexes depende de como voc
cria a soluo inicialmente e se seus projetos e arquivos esto todos salvos na
mesma partio.
Como um exemplo de vnculos e conexes, pense em uma soluo bem formada de
controle de origem, com vrios projetos, como uma casa com vrias salas. Quando
voc constri a casa, voc pode instalar uma linha de dados nica de alta
velocidade de uma sala rua. Voc instala um roteador atrs de um firewall para
distribuir a alimentao de dados para outras salas e voc paga um provedor de
servios de Internet para conectar sua casa com a Internet.
Voc pode pensar em vnculo de controle de origem como representao da linha
de dados nica criada para a casa. Quando voc abre uma soluo controlada por
fonte, uma conexo criada atravs dessa ligao. A conexo estabelece um
'aperto de mo' entre a sua cpia de trabalho da soluo no disco e a cpia mestra
da soluo no banco de dados.
Se uma soluo controlada por origem no for bem formada, voc pode v-la como
uma casa na qual cada sala unida Internet diretamente. Tarifas de Internet so
mais caras do que as da casa de conexo nica, os custos de manuteno so

Visual Studio

10

superiores, e mudar para um provedor de servios de Internet diferente muito


mais difcil e demorado.
Idealmente, uma soluo e seu projeto compartilham uma ligao de controle de
origem nica. Solues Single-Binding so mais gerenciveis do que solues
Multiple-Binding. Elas tornam mais fcil:

Desconectar do controle de origem para trabalhar off-line.

Conectar-se ao banco de dados aps a reconexo com a rede.

Ramificar em uma etapa.

Voc pode criar uma soluo de multiprojeto com uma ligao nica, criando uma
soluo em branco antes de adicionar seus projetos. Voc tambm pode fazer isso,
selecionando a opo Create Directory for Solution na caixa de dilogo New
Project, ao criar um par de soluo de multiprojeto.
Se voc criar um par de soluo de multiprojeto em uma etapa e no selecionar a
opo Create Directory for Solution na caixa de dilogo New Project
(desativado por padro), uma segunda ligao ser criada quando voc adicionar
um segundo projeto soluo. Uma ligao criada para o projeto inicial e para a
soluo. Ligaes adicionais so criadas para cada projeto adicional.
Terminologia de controle de origem
A documentao do Visual Studio usa um nmero de termos para descrever
recursos e conceitos de controle de origem. A tabela a seguir define alguns dos
termos comuns.
Verso base
A verso do servidor de um arquivo do qual uma verso local derivada.
Vinculao
Informao que correlaciona uma pasta de trabalho de uma soluo ou
projeto no disco pasta no banco de dados.
Ramificao
Processo de criar uma nova verso, ou ramificao, de um arquivo
compartilhado ou projeto sob controle de origem. Uma vez que uma
ramificao tenha sido criada, as duas verses sob controle de origem tero
um histrico compartilhado at um determinado ponto e histricos
divergentes aps esse ponto.
Conflito
Duas ou mais alteraes diferentes para a mesma linha do cdigo em
situaes em que dois ou mais desenvolvedores tenham feito o check-out e
editado o mesmo arquivo.
Conexo
Uma ligao de dados ativa entre um cliente do controle de origem (por
exemplo, Visual Studio) e um servidor de banco de dados do controle de
origem.
Banco de dados
Local onde todas as cpias mestre, histrico, estruturas de projeto e
informaes do usurio so armazenados. Um projeto sempre est contido
em um banco de dados. Vrios projetos podem ser armazenados em um
banco de dados, e vrios bancos de dados podem ser usados. Outros termos

Visual Studio

11

normalmente usados para um banco de dados so repositrio e


armazenamento.
Histrico
Registro de alteraes de um arquivo desde que ele tenha sido adicionado,
inicialmente, no controle de origem. Com o controle de verso, voc pode
retornar a qualquer ponto no histrico do arquivo e recuperar o arquivo como
ele existia at esse momento.
Rtulo
Nome definido pelo usurio anexado a uma verso especfica de um item
controlado por fonte.
Cpia local
Arquivo em uma pasta de trabalho do usurio para a qual so copiadas
alteraes antes que seja feito um check-in. Uma cpia local , s vezes,
chamada de uma cpia de trabalho.
Cpia mestra
A verso mais recente do check-in de um arquivo controlado por fonte, em
oposio cpia local de um arquivo em sua pasta de trabalho. Outros
termos para cpia mestra so verso do servidor e verso do banco de
dados.
Mesclar
Processo de combinar diferenas entre duas ou mais verses modificadas de
um arquivo em uma nova verso de arquivo. Mesclar pode afetar diferentes
verses do mesmo arquivo ou alteraes feitas a uma mesma verso do
arquivo.
Arquivo compartilhado
Um arquivo com verses que residem em mais de uma localidade de controle
de origem. Outros termos para um arquivo compartilhado so cpia e atalho.
Raiz soluo
Uma pasta vazia em um banco de dados que contm todos os itens de uma
soluo controlada por origem. Por padro, essa pasta < nomedasolucao
>.root.
Raiz Super-unificada
Um continer virtual abaixo do qual todos os projetos e os arquivos em uma
soluo controlada por origem esto localizados. Por exemplo [SUR]: \. a
raiz super-unificada de uma soluo controlada por origem contendo projetos
localizados em [SUR]:\C:\Solucao\Proj1 e [SUR]:\D:\Proj2.
Raiz unificada
Um caminho para a pasta pai de todas as pastas de trabalho e arquivos em
uma soluo ou projeto controlado por origem. Por exemplo, C:\Solucao a
raiz unificada de uma soluo controlada por origem contendo arquivos
localizados em C:\Solucao, C:\Solucao\Proj1 e C:\Solucao\Proj2.
Pasta de trabalho
Local no qual as cpias locais de itens controlados por origem so
armazenados, geralmente no seu prprio computador. Outro termo para uma
pasta de trabalho espao de trabalho.

Visual Studio

12

O que h de novo no controle de origem para o Visual Studio


O Visual Studio tem dado suporte a controle de origem e integrao de plug-ins de
controle de origem h algum tempo. Entretanto, a verso atual inclui um nmero
de aperfeioamentos de integrao. Para informaes sobre novos recursos da
parte de controle de origem do SDK do ambiente Visual Studio, consulte
"Novidades para controle de origem"
Alternncia de plug-in
Controle de origem agora permite alternar entre todos os tipos de plug-ins de
controle de origem em Options no menu Tools. Esta alternncia permite a
substituio completa da interface do usurio e permite um plug-in por soluo.
Melhorias no acesso ao projeto via aberturas assncronas
Controle de origem do Visual Studio foi aprimorado para abrir solues de forma
assncrona e refletir o progresso de uma operao de abertura modificando os
cones no Solution Explorer. O recurso de abertura assncrona marca projetos que
ainda esto sendo baixados com uma ampulheta, e marca projetos totalmente
baixados para acesso assim que eles estiverem disponveis. Isso significa que voc
pode abrir e comear a trabalhar em um projeto mesmo que o Visual Studio esteja
ainda abrindo os outros projetos na soluo.
Observao
Este recurso est apenas disponvel para Visual Basic, C#, J# e projetos da Web e no possui suporte de
todos os plug-ins de controle de origem.
Melhorias na caixa de dilogo do Visual Studio para dar suporte a controle de
origem
Os seguintes aperfeioamentos de acesso a arquivo foram feitos nas caixas de
dilogo do Visual Studio:

Agora voc pode adicionar projetos ao controle de origem e abri-los


facilmente usando a nova guia Source Control Stores na caixa de dilogo
Open Project.

Voc pode adicionar um arquivo existente do controle de origem a um


projeto usando a caixa de dilogo Add Existing Item.

Voc pode adicionar automaticamente solues e projetos ao controle de


origem marcando a caixa de seleo Add to Source Control na caixa de
dilogo New Project.

Sincronizao de excluses, renomeaes e movimentaes


Para oferecer suporte a propagao de alterao de namespace, a verso mais
recente de controle de origem sincroniza excluses, renomeaes, e
movimentaes com o banco de dados. Quando voc fizer uma alterao voc ser
solicitado a propagar a alterao, enquanto outros usurios podero sincronizar
atravs de operaes de recuperao. Em verses anteriores, se voc exclua,
renomeava ou movia um item no servidor, ele permanecia na sua pasta de trabalho
mesmo aps a sincronizao.
Melhorias nas operaes bsicas de controle de origem

Visual Studio

13

Os seguintes aperfeioamentos foram feitos nas operaes bsicas de controle de


origem do Visual Studio:

Voc pode agora fazer um check-out de um arquivo de uma pasta de


trabalho local sem precisar baixar pela rede a verso mais recente do
arquivo no banco de dados.

Agora checkouts so automticos e nmero de solicitaes reduzido.

Voc tem uma opo para configurar o Visual Studio para automaticamente
obter do controle de origem a ltima verso de todos os itens da soluo
quando voc abrir uma soluo .

Voc pode configurar o Visual Studio para fazer silenciosamente check-out de


arquivos em edio e fazer automaticamente check-in das suas alteraes
quando voc fechar a soluo.

Suporte ao Visual Web Developer


O Visual Web Developer pode agora acessar recursos de controle de origem de
projeto na Web, como baixar em qualquer local. Em verses anteriores do Visual
Studio, o local estava embutido em cdigo para baixar em c:\inetpub\wwwroot.
Consulte tambm

Execuo de Tarefas de Controle de Origem


Esta seo descreve tarefas gerais de controle de origem que voc pode executar
no Visual Studio para qualquer plug-in. Operaes bsicas de controle de origem
como check in, check out e exibio de histrico so amplamente especficas de
plug-in, embora essas operaes possam fazer uso de alguns dos elementos de
interface de usurio padro suportados pelo pacote de controle de origem do Visual
Studio. Para tarefas de plug-in-especfico, entretanto, voc deve consultar a
documentao do plug-in de controle de origem especfico.
Observao
Muitos desses procedimentos referem-se seleo de comandos bsicos de controle de origem do menu
File do Visual Studio. Alternativamente, voc pode acessar muitos dos comandos clicando com o boto
direito do mouse em um item controlado por fonte no Solution Explorer.

COMO: Adicionar um projeto ao controle de origem


O controle de origem do Visual Studio permite adicionar um projeto e seu arquivo
de soluo ao controle de origem ao mesmo tempo. Se uma soluo j estiver sob
controle de origem, voc pode adicionar um novo projeto a ela. Fazendo check-in
de uma soluo automaticamente coloca qualquer novos projetos que esta contm
sob controle de origem.
Para adicionar um projeto e soluo ao controle de origem
1.

No Visual Studio, crie um novo projeto. Se voc tiver dvidas sobre como
fazer isso, procure a Ajuda do Visual Studio.

2.

Selecione a soluo que contm o novo projeto.

3.

No menu File, clique em Source Control.

Visual Studio

14

4.

Clique em Add Solution to Source Control e selecione a base de dados de


projeto qual quer adicionar a soluo usando os procedimentos do plug-in
de controle de origem sendo utilizado.

Para adicionar os projetos selecionados ao controle de origem


1.

No Visual Studio, abra uma soluo existente no Solution Explorer.

2.

Crie novos projetos conforme necessrio na soluo. Se voc tiver dvidas


sobre como fazer isso, h vrios procedimentos na Ajuda do Visual Studio.

3.

Faa o check-out do arquivo de soluo, pois o controle de origem precisa


incluir os novos detalhes do projeto nesse arquivo. Use o procedimento de
check-out especficos para o plug-in de controle de origem em uso.

4.

No menu File, clique em Source Control, e em seguida, clique em Add


Selected Projects to Source Control

5.

Voc ser solicitado a decidir se deseja adicionar os projetos como subpastas


da soluo ou como pastas separadas. Na maioria das situaes, voc deve
adicionar os projetos pasta da soluo no banco de dados.

6.

Faa o check-in da soluo de volta no controle de origem, usando o


procedimento de check-in especfico para o plug-in de controle de origem em
uso.

COMO: acoplar ou desacoplar uma soluo ou projeto


Voc deve ligar uma soluo ou projeto ao controle de origem de maneira que este
item tenha acesso aos comandos bsicos de controle de origem, tais como Check
Out, Check In, e Get. Uma ligao associa a cpia local do item cpia mestre no
banco de dados.
Desacoplar uma soluo ou projeto controlado por origem remove o item do
controle de origem, desassociando a cpia local da cpia mestre no banco de
dados, e desativando todos os comandos de controle de origem. Talvez voc
precise desacoplar um item se:

Voc precisar relig-lo verso de backup do banco de dados quando o


servidor primrio for desligado. Voc pode conectar a um servidor de backup,
religar a sua cpia da soluo cpia mestre do servidor no banco de dados
de backup, e continuar trabalhando normalmente. Para mais informaes,
consulte COMO: conectar ou desconectar uma soluo ou projeto.

Voc desejar iniciar uma nova ramificao sem nenhum histrico de controle
de origem em uma pasta de banco de dados diferente.

Voc desejar utilizar um outro plug-in de controle de origem .

Desacoplar um item no o remove permanentemente do banco de dados. Para


obter mais informaes de como excluir um item, consulte COMO: excluir um item
controlado por origem.
Para ligar uma soluo ou projeto ao controle de origem
1.

No Visual Studio, abra o Solution Explorer e selecione uma soluo ou


projeto a ser ligado.

2.

No menu File, clique em Source Control, depois em Change Source


Control.

Visual Studio

15

3.

Na caixa de dilogo Change Source Control, clique em Bind.

4.

Selecione o banco de dados e local ao qual ligar, e clique em OK.

Para desacoplar uma soluo ou projeto do controle de origem


1.

No Visual Studio, abra o Solution Explorer e selecione uma soluo ou


projeto a ser desacoplado.

2.

No menu File, clique em Source Control, depois em Change Source


Control.

3.

Na caixa de dilogo Change Source Control, clique em Unbind.

4.

Clique em OK.

COMO: alterar o local da pasta de trabalho


s vezes o Solution Explorer indica locais de pasta por um sublinhado ondulado.
Essas entradas representam caminhos invlidos relativos pasta de trabalho. Para
corrigir caminhos invlidos, voc deve alterar o local da pasta de trabalho.
Para alterar o local da pasta de trabalho
1.
2.
3.
4.

No Visual Studio, abra o Solution Explorer.


Clique em um caminho invlido na coluna Enter Working Copy Location
Here.
Clique no boto de reticncias ()
Digite um caminho vlido, por exemplo, http://<host local>/pasta1, e clique
em OK. Se a pasta ainda no existir, o Visual Studio criar uma.

Como conectar ou desconectar uma soluo ou um projeto


Conforme descrito em Introduo ao Controle de Cdigo Fonte, uma soluo no
Visual Studio pode ter um ou mais vnculos com o controle de cdigo fonte. Uma
conexo criada automaticamente sempre que um item vinculado ao controle de
cdigo fonte conforme descrito em Como vincular ou desvincular uma soluo ou
um projeto. Pode-se criar uma conexo manualmente conforme descrito neste
tpico.
Se voc desconectar seu computador da rede ou perder a conexo por alguma
outra razo, voc deve desconectar temporariamente os vnculos da soluo a fim
de editar os projetos e os arquivos nela contidos. Quando voc desconecta uma
soluo do controle de cdigo fonte, o nico comando bsico que voc pode usar
o comando de check-out. Ao realizar o check-out de um item desconectado, a cpia
local do item, contida na sua pasta de trabalho, torna-se editvel. Quando for
possvel acessar o banco de dados novamente, voc pode reconectar a soluo e
sincronizar sua cpia local com a cpia mestre mais recente.
Procedimentos
Para conectar uma soluo ou um projeto ao controle de cdigo fonte
1.

No Visual Studio, abra a janela Solution Explorer e selecione os itens a serem


conectados.

Visual Studio

16

2.

No meu File , clique em Source Control e depois em Change Source


Control.

3.

Na caixa de dilogo Change Source Control, clique em Connect.

4.

Clique em OK.

Para desconectar uma soluo ou projeto de controle de cdigo fonte


1.

No Visual Studio, abra a janela Solution Explorer e selecione os itens a serem


desconectados.

2.

No menu File, clique em Source Control e depois em Change Source


Control.

3.

Na caixa de dilogo Change Source Control, clique em Disconnect.

4.

Clique em OK.

COMO: copiar um item sob controle de origem


Voc pode copiar um projeto de uma soluo sob controle de origem para outra, ou
copiar um arquivo de um projeto sob controle de origem para outro. Quando voc
copia um item, uma nova ramificao criada no banco de dados, junto com o
histrico e outros metadados do item. Criar ramificaes permite que sua equipe
desenvolva duas verses de um produto simultaneamente e independentemente.
Observao
Se voc copiar um projeto sob controle de origem para uma soluo que no est sob controle de origem,
no podero ser criadas ramificaes no projeto.
Para copiar um projeto sob controle de origem
1.
2.
3.

No Visual Studio, abra o Solution Explorer.


Clique com o boto direito do mouse na soluo de destino no Solution
Explorer.
No menu File, clique em Add e depois em Existing Project.

4.

Na caixa de dilogo Add Existing Project, clique no nome de seu plug-in de


controle de origem.

5.

Clique duas vezes no banco de dados contendo o projeto que voc deseja
copiar.

6.

Selecione o projeto, e clique em Add.

7.

Clique em OK.

Para copiar um arquivo sob controle de origem


1.
2.

3.

No Visual Studio, abra o Solution Explorer.


Clique com o boto direito do mouse no projeto de destino no Solution
Explorer. Este projeto deve estar no mesmo banco de dados que o projeto de
origem.
No menu File, clique em Add e depois em Existing Item.

Visual Studio

17

4.

Na caixa de dilogo Add Existing Item, clique no nome de seu plug-in de


controle de origem.

5.

Clique duas vezes no banco de dados que contm o arquivo que voc deseja
copiar.

6.

Selecione o arquivo, e clique em Add.

7.

Clique em OK.

COMO: excluir um item controlado por origem


Quando voc exclui um item controlado por origem, o Visual Studio exclui
automaticamente a cpia local, se o plug-in de controle de origem apoiar a
propagao de modificao de espao para nome. Caso contrrio, ele o consultar
para obter instrues sobre excluso. Para mais informaes sobre propagao de
modificao de espao para nome, consulte Introduo ao controle de origem.
A maioria dos plug-ins para controle de origem para o Visual Studio no exclui
permanentemente itens de um banco de dados. Para obter mais informaes sobre
como excluir permanentemente um item de controle de origem, consulte a
documentao do produto de terceiros para seu plug-in.
Para excluir um item controlado por origem
1.
2.

No Visual Studio, abra Solution Explorer.


Clique com o boto direito do mouse no item que deseja excluir, depois
clique Delete ou Remove.

Observao
O comando Remove s estar disponvel para projetos a base de referncia, como projetos C++.
1.

Voc ser solicitado para fazer o check-out no item. Faa o check-out como
apoiado pelo seu plug-in de controle de origem.

2.

Se tiver clicado em Remove, anteriormente, clique em Delete na caixa de


dilogo que aparece.

3.

Na caixa de dilogo Source Control, clique em Delete the item(s) locally


and in the source control store.

4.

Em Solution Explorer, faa o check-in do item como apoiado pelo seu plug-in
de controle de origem.

5.

Notifique a excluso a qualquer pessoa que possa ter feito o check-out do


projeto ao qual o item excludo pertence.

6.

Se houver suporte para a propagao de modificao de espao para nome,


permita que os outros usurios faam a atualizao de suas cpias locais. Eles
recebero uma mensagem notificando-os da excluso.

7.

Se no houver suporte propagao de modificao de espao para nome,


voc ter de informar aos outros usurios para removerem manualmente suas
cpias locais do item excludo.

Visual Studio

18

Como ativar recuperao automtica


Voc pode configurar o Visual Studio para recuperar automaticamente a verso
mais recente de um item sob controle de verso sempre que voc abri-lo. Isso
garante que a cpia local permanecer sincronizada com a cpia mestra.
Procedimentos
Para obter a verso mais recente automaticamente
1.

No Visual Studio, no menu Tools, clique em Options.

2.

Na caixa de dilogo Options, clique em Source Control e em seguida clique


em Environment.

3.

Marque a caixa de seleo Get everything when a solution or project is


opened.

4.

Clique em OK.

Como desativar a criao da pasta <solutionname>.root


Quando voc adiciona uma soluo ao controle de cdigo fonte, o respectivo plug-in
cria automaticamente uma pasta < solutionname >.root vazia no banco de dados.
Essa pasta ir conter a raiz unificada da soluo. Para mais informaes sobre a
raiz unificada, consulte Introduo ao controle de cdigo fonte.
Cuidado
Desativar a criao automtica da pasta < solutionname >.root ir alterar o comportamento do plug-in
sempre que uma soluo com vrios projeto for adicionada ao controle de cdigo fonte. Por exemplo,
operaes que adicionam projetos levaro mais tempo para concluir. Alm disso, voc ter que responder
a solicitaes redundantes ao executar operaes de controle de cdigo fonte em vrios projetos.
Para desativar a criao automtica da pasta < solutionname >.root
1.
2.

Na rea de trabalho do Windows, clique em Start e, em seguida, clique em


Run
Digite Regedit e clique em OK.

3.

Abra \SourceControl HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\


< nmero de verso >.

4.

Selecione a chave DoNotCreateSolutionRootFolderInSourceControl e clique


em Edit e depois em Modify.

5.

Na caixa de dados Value, troque 0 por 1.

6.

Clique em OK para aceitar a alterao do registro.

COMO: Ativar Check-ins automticos


Voc pode configurar o Visual Studio para que efetue automaticamente check-in
nas suas alteraes no controle de origem quando voc fechar uma soluo.

Visual Studio

19

Automatizar o processo de check-in garante que seus trabalhos mais recentes se


tornem periodicamente disponveis para outros membros da equipe, mesmo se
voc esquecer fazer check-in manualmente.
Para ativar checkins automticos
1.

No Visual Studio, no menu Tools, clique em Options.

2.

Na caixa de dilogo Options, clique em Source Control, clique em


Environment.

3.

Marque a caixa de seleo Check in everything when closing a solution


or project.

4.

Clique em OK.

COMO: desativar check-outs automticos


O controle de origem no Visual Studio permite check-outs automticos por padro.
Esta seo descreve como voc pode configurar o Visual Studio para desativar
check-outs automticos.
Procedimentos
Para desativar check-outs automticos
1.

No Visual Studio, no menu Tools, clique em Options.

2.

Na caixa de dilogo Options, clique em Source Control, e depois clique em


Environment.

3.

Na caixa Editing, desmarque a caixa de seleo Check out automatically.

4.

Clique em OK.

COMO: ativar ou desativar controle de origem


O controle de origem no Visual Studio estar disponvel somente se um plug-in
vlido de controle de origem estiver instalado e registrado para ser usado em seu
computador. O plug-in registrado durante a instalao do software de terceiros. O
Visual Studio usa esse registro para localizar os plug-ins e as localidade de seus
bancos de dados padro sempre que voc abrir a IDE do Visual Studio. Ela lista
todos os plug-ins disponveis na aba Plug-in Selection da entrada Source
Control na caixa de dilogo Options.
Se voc no tiver nenhum plug-in de controle de origem compatvel instalado em
seu computador, o controle de origem no Visual Studio no est ativado. Voc no
ver nenhuma entrada Source Control no menu File.
Cuidado
Voc pode usar um plug-in de controle de origem no Visual Studio e o aplicativo autnomo de controle
de origem correspondente para gerenciar o mesmo projeto ou soluo. Entretanto, fazer check-outs de
itens de ambos os programas para a mesma pasta de trabalho no recomendvel. Isso pode levar a
situaes em que solues e projetos no podem ser acessados no controle de origem.

Visual Studio

20

Para ativar um determinado plug-in de controle de origem


1.
2.

No Visual Studio, no menu Tools, clique em Options.


Na caixa de dilogo Options , clique em Source Control, clique em Plug-in
Selection.

3.

Selecione o plug-in de controle de origem que deseja usar.

4.

Clique em OK.

Para desativar completamente o controle de origem


1.
2.

No Visual Studio, no menu Tools, clique em Options.


Na caixa de dilogo Options, clique em Source Control, clique em Plug-in
Selection.

3.

Selecione None na caixa Current source control plug-in.

4.

Clique em OK.

COMO: excluir um arquivo de controle de origem


Se a soluo em voc estiver trabalhando contm arquivos que no requerem
controle de origem, voc pode utilizar o comando Exclude from Source Control
para marcar adequadamente o arquivo. Quando voc fizer isso, o arquivo
permanecer no banco de dados, mas no mais realizado check-in ou check-out
do mesmo a partir do projeto que o contm.
Observao
Arquivos gerados so excludos do controle de origem por padro. Um arquivo gerado um que pode ser
recriado inteiramente pelo Visual Studio, de acordo com o contedo de outro arquivo do Visual Studio.
Para excluir um arquivo do controle de origem
1.

No Visual Studio, abra Solution Explorer e selecione o arquivo a ser excludo.

2.

No menu File, clique em Source Control, clique em Exclude from Source


Control.

3.

Quando voc estiver pronto para colocar o arquivo sob controle de origem,
voc pode acessar o menu File, clicar em Source Control e ento desmarcar
Exclude from Source Control.

COMO: mover uma raiz de ligao de projeto


Voc talvez necessite mover a raiz de ligao de um projeto se alguns arquivos que
voc deseja adicionar ao projeto estiverem localizados fora da raiz do projeto.
Para mover uma raiz de ligao de projeto
1.

No Visual Studio, abra o Solution Explorer e selecione um projeto que


contm arquivos que estejam fora da pasta da soluo ou raiz do projeto.

Visual Studio

21

2.
3.

No menu File, clique em Source Control, depois em Change Source


Control.
Na caixa de dilogo Change Source Control, clique em Unbind.

4.

Na caixa de mensagem, clique em Unbind para confirmar que voc deseja


remover o projeto do controle de origem.

5.

Se a soluo e o projeto compartilham uma ligao de controle de origem,


desacople a soluo tambm.

6.

Com o projeto selecionado, acesse novamente a caixa de dilogo Change


Source Control e clique em Bind.

7.

Se solicitado, faa logon no seu banco de dados de controle de origem.

8.

Selecione a pasta pai na qual todos os arquivos no projeto esto


armazenados. Na maioria dos casos, a pasta <nomesoluo>.root esta
pasta.

9.

Se voc teve que desacoplar a soluo juntamente com o projeto, voc deve
relig-la a uma pasta de banco de dados.

COMO: mover um item controlado por fonte


No Visual Studio, voc pode mover um item controlado por origem de uma pasta de
projeto ou soluo para outro. Quando voc move um item, voc move todo o
histrico e metadados de controle de origem associados se o plug-in de controle de
origem apoiar a propagao de modificao de espao para nome. Tanto a origem
quanto os itens de destino envolvidos em uma operao de mudana de local
devem ser localizados no mesmo banco de dados de controle de origem. Para mais
informaes sobre propagao de modificao de espao para nome, consulte
Introduo ao controle de origem.
Observao
A operao de mudana s pode ocorrer entre dois projetos na mesma soluo, ou entre duas solues.
Para uma mudana de local ser ativada, uma soluo e seus projetos devem compartilhar uma vinculao
de controle de origem. Para mais informaes, consulte COMO: acoplar ou desacoplar uma soluo ou
projetos.
Para mover um item controlado por origem
1.
2.

No Visual Studio, abra o Solution Explorer.


Clique no item que voc deseja mover e arraste-o para a soluo ou projeto
de destino no Solution Explorer.

COMO: abrir um projeto ou soluo do controle de origem


Quando voc abre um projeto ou soluo do controle de origem, o Visual Studio
baixa a cpia mestra mais recente do item e de todos os arquivos contidos para a
pasta de trabalho local. Depois que voc recuperar uma cpia local do item, voc
no precis abri-lo a partir do controle de origem novamente. Voc pode continuar

Visual Studio

22

a usar os comandos de controle de origem para o seu plug-in especfico de controle


de origem.
Cuidado
Se voc repetir um dos procedimentos neste tpico, voc criar vrias pastas de trabalho e vrias
instncias dos arquivos que elas contm.
Para abrir um projeto ou soluo do controle de origem
1.

No Visual Studio, no menu File, clique em Open.

2.

Clique em Project/Solution.

3.

Na caixa de dilogo Open Project , selecione Close Solution if not


already selected.

4.

No lado esquerdo da caixa, clique em My <source control plug-in>


Stores, e depois clique em Open.

5.

Procure e selecione o seu arquivo de projeto (*.proj) ou de soluo (*.sln),


altere a pasta de destino, e depois clique em Open.

6.

Se voc j tiver uma cpia local da soluo ou do projeto que voc est
abrindo do controle de origem, voc ser solicitado a substituir a cpia local
de todos os arquivos e projetos na soluo. Responda s perguntas conforme
necessrio.

Para abrir um projeto da Web do controle de origem


1.

No Visual Studio, no menu File, clique em Open.

2.

Clique em Web Site.

3.

Na caixa de dilogo Open Web Site, clique em My <source control plugin> Stores, depois clique em Open.

4.

Procure e selecione o projeto da Web, altere a pasta de destino, e depois


clique em Open.

5.

Se voc j tiver uma cpia local do projeto da Web que voc est abrindo do
controle de origem, voc ser solicitado a substituir a cpia local de todos os
arquivos e projetos na soluo. Responda s perguntas conforme necessrio.

COMO: Renomear um item controlado por origem


Quando voc renomeia um item controlado por origem, o Visual Studio renomeia a
cpia local automaticamente se o plug-in de controle de origem suporta propagao
da alterao de namespace. Caso contrrio, ele consultar voc para obter
instrues de renomeao. Para mais informaes sobre propagao de alteraes
de namespaces, consulte Introduo ao controle de origem.
Para renomear um item de origem controlada
1.
2.

No Visual Studio, abra o Solution Explorer.


Clique com o boto direito do mouse no arquivo a ser renomeado, clique
Rename.

Visual Studio

23

3.

Digite um novo nome e pressione Enter.

4.

Voc ser solicitado para fazer check-out do item. Efetue o check-out


conforme o suporte de seu plug-in de controle de origem.

5.

Na caixa de dilogo Source Control, clique em Rename or move the


item(s) locally and in the source control store.

6.

No Solution Explorer, efetue o check-in do item conforme o suporte de seu


plug-in de controle de origem.

7.

Notifique qualquer pessoa que possa ter efetuado check-out do item que
voc renomeou.

8.

Se houver suporte para propagao da alterao de namespace, faa com


que os outros usurios efetuem um get para atualizar suas cpias locais. Eles
recebero uma mensagem notificando-os sobre a operao de renomeao.

9.

Se no houver suporte para a propagao da alterao do namespace,


necessrio informar aos outros usurios para que renomeiem suas cpias
locais manualmente para refletir a alterao do nome.

COMO: definir opes de plug-in


Dependendo da como voc gerenciar seus itens em controle de origem, voc pode
desejar alterar algumas das opes padro de controle de origem antes de usar o
banco de dados. Essas opes esto disponveis atravs da Configurao Options
no menu Tools do Visual Studio.
Observao
Consulte a documentao do plug-in de controle de origem em uso para uma lista completa das opes no
nvel do banco de dados e das mais avanadas, alm de instrues sobre como configur-las.
Para definir opes de plug-in
1.

No Visual Studio, no menu Tools, clique em Options e, em seguida, em


Source Control.

2.

Na caixa de dilogo Options, clique em Plug-in Selection, assegure-se que


seu plug-in o indicado, e clique em OK.

3.

Selecione Environment na caixa de dilogo Options.

4.

Na caixa Source Control Environment Settings, selecione a funo para a


qual voc deseja definir as opes de controle de origem. O Visual Studio
seleciona automaticamente as opes de controle de origem padro para a
funo que voc tiver selecionado. Se voc desmarcar qualquer uma das
opes padro, a caixa Source Control Environment Settings exibe a
Opo Custom para indicar que voc personalizou o perfil originalmente
selecionado.

5.

Personalize o perfil, marcando ou desmarcando as caixas de seleo do


controle de origem.

6.

Clique em OK.

7.

Agora clique em Plug-in Settings na caixa de dilogo Options.

Visual Studio

24

8.

Nessa aba, voc pode definir configuraes para cada funo do plug-in.
Clicando no boto Advanced tem-se acesso s configuraes avanadas para
a funo que voc est configurando.

9.

Quando concluir todas as configuraes do plug-in, clique em OK para sair


da caixa de dilogo Options.

Como: Trocar plug-ins de controle de origem:


Se voc tiver instalado mais de um plug-in para controle de origem para o Visual
Studio, voc pode troc-los a qualquer momento. Lembre-se que projetos
controlados por um plug-in de controle de origem no podem ser adicionados a
uma soluo gerenciada por um plug-in diferente. Uma vez que voc acrescenta
uma soluo ou projeto ao controle de origem que usa um plug-in, voc no pode
acrescentar o mesmo item ao controle de origem que usa outro plug-in, a menos
que voc remova, primeiro, o item do controle de origem.
Para mudar o plug-in padro de controle de origem
1.
2.
3.

No Visual Studio, no menu Tools, clique em Options.


Na caixa de dilogo Options clique em Source Control, depois em Plug-in
Selection.
Selecione um plug-in e clique OK.

COMO: exibir uma lista de arquivos com check-out


Voc pode usar a janela Pending Checkins para exibir uma lista dos arquivos com
check-out na soluo atual. O controle de origem do Visual Studio permite que voc
faa um check-in de arquivos desta janela com um nico clique de boto.
Para exibir uma lista de arquivos modificados
1.

No Visual Studio, no menu View, clique em Pending Checkins.

2.

Encaixe a janela conforme desejado.

3.

Se voc desejar fazer check-in de arquivos desta janela, selecione-os e


clique no boto Check In.

Referncia a Interface do Usurio do controle de origem


Esta seo descreve as caixas de dilogo usadas pelo controle de origem no Visual
Studio. As caixas de dilogo a seguir so modelos que o desenvolvedor de plug-in
pode adaptar conforme necessrio. Voc pode ou no ver essas caixas de dilogo
no Visual Studio, dependendo do plug-in que est sendo usado para controle de
origem:

Verifique em

Verificar sada para editar

Obter

Desfazer Checkout

Visual Studio

25

Caixa de dilogo Change Source Control


Cria e gerencia as conexes e ligaes que vinculam uma soluo ou projeto
localmente salvos a uma pasta no banco de dados.
Observao
No possvel usar o Visual Studio para vincular, desvincular, conectar ou desconectar um aplicativo da
Web criado utilizando as FrontPage Server Extensions.
Acesso caixa de dilogo
No Visual Studio, selecione um item no Solution Explorer. No menu File, clique em
Source Control e depois em Change Source Control.
Observao
Esta caixa de dilogo tambm est disponvel clicando com o boto direito do mouse sobre o item no
Solution Explorer.
Vincular
Associa os itens selecionados a uma localidade do servidor de controle de
origem especificado. Por exemplo, voc pode usar este boto para criar um
vinculo pasta mais recentemente utilizada do servidor de controle de
origem e banco de dados. Se uma pasta recente do servidor ou do banco de
dados no puder ser encontrada, voc ser solicitado a especificar outra.
Procurar
Permite que voc procure uma nova localidade para o item especificado no
servidor de controle de origem.
Colunas
Identifica colunas para exibio e a ordem na qual elas so exibidas.
Conectar
Cria uma conexo entre itens selecionados e o servidor de controle de
origem.
Conectado
Exibe o status da conexo de uma soluo ou projeto selecionado.
Desconectar
Desconecta a cpia local de uma soluo ou projeto no seu computador da
cpia mestre no banco de dados. Utilize esse comando antes de desconectar
seu computador do servidor de controle de origem, por exemplo, ao
trabalhar off-line em seu laptop.
OK
Aceita alteraes feitas na caixa de dilogo.
Provedor
Exibe o nome do plug-in de controle de origem.
Atualizar

Visual Studio

26

Atualiza as informaes de conexo para todos os projetos listados nesta


caixa dilogo.
Servidor Binding
Indica a ligao de um item a um servidor de controle de origem.
Nome do servidor
Exibe o nome do servidor de controle de origem ao qual a soluo ou projeto
correspondente est acoplada.
Solution/Project
Exibe o nome de cada projeto e soluo na seleo atual.
Classificao
Altera a ordem de classificao de colunas exibidas.
Status
Identifica o status de vinculao e conexo de um item. As possveis opes
so:
Opo

Descrio

Vlido

Especifica que o item est corretamente vinculado e conectado a pasta do servidor ao


qual ele pertence.

Invlido

Especifica que o item est incorretamente vinculado ou desconectado da pasta qual ele
pertence. Use o comando Add to Source Control ao invs do comando Bind para este
item.

Desconhecido Especifica que status do item sob controle de origem ainda no foi determinado.
No
controlado

Especifica que o item no se encontra sob controle de origem.

Desagrupar
Exibe a caixa de dilogo Source Control que permite que voc remova os
itens selecionados do controle de origem e permanentemente disassocie-os
das suas pastas.
Observao
Se voc desvincular um projeto da Web, ser impossvel revincul-lo a seu servidor de controle de origem
original at que voc altere a localidade de sua cpia de trabalho.

Caixa de dilogo Check In (Controle de Cdigo Fonte)


Verifica um arquivo, soluo ou projeto alterado no banco de dados do controle de
cdigo fonte. Check-ins tambm podem ser feitos a partir da janela Pending
Checkins.

Visual Studio

27

Acesso caixa de dilogo


No Visual Studio, selecione um item na janela Solution Explorer. No menu File,
clique em Source Control depois em Check In.
Observao
Esta caixa de dilogo tambm disponibilizada clicando-se com o boto direito no item na janela
Solution Explorer.
Check In
Realiza o check-in de todos os itens selecionados.
Columns
Identifica as colunas a serem exibidas e a ordem na qual elas so exibidas.
Comments
Especifica um comentrio a ser associado com a operao de check-in.
Don't show Check in dialog box when checking in items
Impede que a caixa de dilogo seja exibidas durante operaes de check-in.
Flat View
Exibe os arquivos onde est sendo feito o check-in como listas simples sob
sua conexo com controle de cdigo fonte.
Name
Exibe os nomes dos itens onde deve-se fazer o check-in. Os itens aparecem
com as caixas de seleo ao lado selecionadas. Se voc no desejar fazer
check-in de um item especfico, desmarque sua caixa de seleo.
Options
Exibe opes de check-in especficas de plug-ins de controle de cdigo fonte
quando a seta direita do boto selecionada.
Sort
Altera a ordem de classificao das colunas de exibio.
Tree View
Exibe a pasta e a hierarquia dos itens nos quais voc estiver realizando o
check-in.

Check-out para a caixa de dilogo Edit (controle de origem)


Faz check-out de solues, projetos ou itens individuais do controle de origem.
Fazer check-out de um item pode copiar a cpia mestre atual para o seu
computador local e remover o seu atributo de somente leitura. Opcionalmente voc
pode configurar o comando Check Out For Edit para fazer check-out somente da
verso local. A menos que o pacote de controle de origem esteja configurado para
dar suporte a checkouts compartilhados, fazer check-out de um item tambm
bloqueia o item de maneira que ele estar em somente leitura para outros
usurios.

Visual Studio

28

Caixa de dilogo Access


No Visual Studio, selecione um item no Solution Explorer. No menu File, clique em
Source Control, depois clique em Check Out For Edit.
Observao
Esta caixa de dilogo tambm est disponvel clicando com o boto direito do mouse no item no Solution
Explorer.
Verificar sada
Faz check-out de todos os itens selecionados.
Colunas
Identifica as colunas para exibio e a ordem na qual elas so exibidas.
Comentrios
Especifica um comentrio para associar operao de check-out.
No caixa dilogo Show Check Out quando check-out itens
Impede que a caixa de dilogo seja exibida durante operaes de check-out.
Exibir simples
Exibe os itens do check-out em progresso como listas simples sob sua
conexo de controle de origem.
Editar
Permite que voc modifique um item sem fazer seu check-out. O boto Edit
aparece somente se voc tiver o Visual Studio configurado para dar suporte
edio de arquivos com check-in.
Nome
Exibe os nomes dos itens disponveis para check-out. Os itens que esto
selecionados aparecem com caixas de seleo ao seu lado. Se voc no
desejar fazer check-out de um item especfico, desmarque sua caixa de
seleo.
Opes
Exibe opes de check-out especficas do plug-in de controle de origem
quando a seta direita do boto clicada.
Classificao
Altera a ordem de classificao das colunas exibidas.
Exibir rvore
Exibe a hierarquia de pastas e arquivos para o item do check-out em
progresso.

Caixa de dilogo Get (controle de origem)


Recupera uma cpia somente para leitura do item selecionado do banco de dados
para sua pasta de trabalho, ou outra pasta que voc especificar.

Visual Studio

29

Acesso caixa de dilogo


No Visual Studio, selecione um item no Solution Explorer. No menu File, clique em
Source Control, depois em Get.
Observao
Esta caixa de dilogo tambm est disponvel clicando-se com o boto direito do mouse sobre o item no
Solution Explorer.
Ao
Especifica a ao a ser executada nos itens a ser recuperados.
Colunas
Identifica colunas para exibio e a ordem na qual elas so exibidas.
Exibir simples
Exibe os arquivos sendo recuperados como listas simples sob suas conexes
ao controle de origem.
Hora modificado
Exibe o momento em que um item foi modificado pela ltima vez.
Nome
Exibe os nomes dos itens a ser recuperados. Os itens aparecem com as
caixas de seleo ao lado dos mesmos selecionadas. Se voc no desejar
recuperar um item especfico, desmarque a caixa de seleo correspondente.
Opes
Exibe opes de recuperao especficas do plug-in do Source Safe quando a
seta direita do boto clicada.
Classificao
Altera a ordem de classificao das colunas exibidas.
Exibir rvore
Exibe a hierarquia de pastas e arquivos para os itens sendo recuperados.

Janela de check-ins pendentes


Exibe todos os arquivos com check-out na soluo ou projeto atual. Voc pode usar
esta janela para fazer check-in de todos os arquivos com um nico clique de boto.
Caixa de dilogo de acesso
No Visual Studio, no menu View, clique em Pending Checkins.
Change type
Identifica o tipo de alterao que foi feita para o item selecionado.
Check In
Efetua check-in dos itens selecionados.
Columns

Visual Studio

30

Identifica as colunas para exibio e a ordem na qual elas sero exibidas.


Comments
Especifica um comentrio a ser associado com a operao de check-in.
Flat View
Exibe os arquivos que voc est efetuando check-in na forma de listas
simples em sua conexo de controle de origem.
Name
Exibe os nomes dos itens com check-in a ser efetuado. Os itens aparecem
com as caixas de seleo ao seus lados selecionadas. Se voc no desejar
fazer o check-in de um item especfico, desmarque sua caixa de seleo.
Options
Exibe opes de check-in especficas de plug-ins quando a seta direita do
boto clicada.
Sort
Altera a ordem de classificao das colunas exibidas.
Tree View
Exibe a hierarquia das pasta e arquivos que voc estiver efetuando check-in.
Undo checkout
Reverte o check-out de um item selecionado, o qual perde qualquer alterao
feita desde o check out.

Guias de plug-in para controle de origem (caixa de dilogo Options)


Permitem a personalizao de funes de controle de origem e configuraes de
plug-in no Visual Studio. As guias de plug-in fazem parte da caixa de dilogo
Options do Visual Studio, localizada sob a entrada Source Control:

Plug-in Selection Alterna entre os plug-ins de controle de origem.

Environment Especifica as configuraes de ambiente para as funes


padres definidas pelo Visual Studio. Por exemplo, se o usurio for um
desenvolvedor independente, conflitos com outros usurios no so
geralmente criados ao manter itens com check-out aps um check-in. Para
esta funo, o Visual Studio seleciona automaticamente a opo Keep items
checked out when checking in.

Plug-in Settings Especifica opes para identificar o plug-in de controle de


origem associado a um projeto ou soluo.

Guia Access
No Visual Studio, no menu Tools, clique em Options, e depois em Source
Control. Opes so definidas para Plug-in Selection, Environment, e Plug-in
Settings.
Lista de elementos de interface do usurio, Selection Plug-in
Altera o plug-in atual de controle de origem associado ao IDE do Visual Studio, e
faz dele o plug-in padro. O plug-in selecionado refletido na entrada Source

Visual Studio

31

Control no menu File do Visual Studio. Clique em OK para registrar sua alterao
e alternar a operao para o plug-in escolhido por voc.
Observao
Voc pode usar esta parte da caixa de dilogo Options para desativar o controle de origem clicando em
None na lista de plug-ins
Lista de elementos de interface do usurio, Environment
Permitir que itens a serem editadas checked-in
Especifica que itens com check-in podem ser editados na memria. Se este
item estiver selecionado, um boto Edit aparecer na caixa de dilogo
Check Out For Edit quando voc tentar editar um item com check-in.
Check in tudo ao fechar uma soluo ou projeto
Especifica que voc ir fazer check-in de todos os itens ao fechar uma
soluo ou projeto.
Itens Checked-in
Contm configuraes para salvar e editar itens com check-in.
No Mostrar caixa de dilogo check-out quando check-out itens
Especifica que o Visual Studio deve exibir o comando Check Out Now no
menu File. Nesse caso, uma caixa de dilogo de check-out no exibida.
No Mostrar caixa de dilogo check-in ao verificar em itens
Especifica que o Visual Studio deve exibir o comando Check In Now no
menu File. Nesse caso, uma caixa de dilogo de check-in no ser exibida.
No mostrar esta caixa de dilogo novamente
Especifica que o Visual Studio no deve mostrar as configuraes de
ambiente de controle de origem.
Edio
Especifica a maneira com que itens devem ser manipulados na edio. As
opes possveis so:
Opo

Descrio

Prompt for checkout

Especifica que o Visual Studio deve emitir um prompt para um check-out.

Prompt for exclusive


checkouts

Especifica que o Visual Studio deve emitir um prompt para check-outs


exclusivos.

Check out automatically

Indica que o Visual Studio deve fazer check-out de itens automaticamente.

Do nothing

Especifica que o Visual Studio no deve fazer nada na edio.

Obter tudo quando uma soluo ou projeto for aberto

Visual Studio

32

Recupera a verso mais recente de todos os itens quando voc abre uma
soluo ou projeto.
Manter itens check-out ao verificar na
Especifica que itens em processo de check-in devem permanecer com checkout para voc. Se voc desejar alterar esta opo para um check-in
especfico, clique na seta de Options na caixa de dilogo Check In, e
desmarque a opo Keep Checked Out.
Redefinir
Redefine confirmaes.
Salvar
Especifica a maneira com que itens devem ser manipulados quando voc os
salva. As opes possveis so:
Opo

Descrio

Prompt for checkout

Especifica que o Visual Studio deve emitir um prompt para check-out em uma
operao de salvar.

Check out
automatically

Especifica que o Visual Studio deve fazer check-out automaticamente em uma


operao de salvar.

Save as

Especifica que o Visual Studio deve apresentar um prompt Save as em uma


operao de salvar.

Configuraes de ambiente controle de origem


Especifica o nome do plug-in de controle de origem para o qual voc est
definindo opes de ambiente.
Lista de elementos de interface do usurio, Plug-in Settings
Avanadas
Permite que voc defina opes adicionais para usar o plug-in de controle de
origem . O boto Advanced s est disponvel quando um plug-in de
controle de origem vlido est instalado no computador local. As
configuraes avanadas so especficas para o plug-in.
Identificao de logon
Especifica o nome de usurio para efetuar logon no plug-in de controle de
origem. Se seu plug-in der suporte, esse nome ser colocado
automaticamente na caixa de dilogo de logon usada pelo plug-in de controle
de origem para acessar o servidor. Para ativar essa opo, desative logons
de usurio automticos do seu plug-in de controle de origem, e reinicie o
Visual Studio.
Observao
A identificao de logon somente pode ser editada quando um plug-in vlido de controle de origem
estiver instalado na mquina local.

Visual Studio

33

Executar atualizaes de status em segundo plano


Atualiza automaticamente os cones de controle de origem no Solution
Explorer medida que o status de item se altera. Se voc tiver atrasos ao
executar operaes intensivas no servidor, especialmente quando abrir uma
soluo ou projeto do controle de origem, desmarcar esta opo pode
melhorar o desempenho.
Configuraes plug-in
Especifica o nome do plug-in de controle de origem para o qual voc est
fazendo configuraes.

Caixa de dilogo Source Control


Permite que voc remova itens do controle de cdigo fonte e desfaa
permanentemente a associao entre os itens e suas pastas. Esta caixa de dilogo
usada para propagar as operaes excluir, renomear e mover.
Acesso caixa de dilogo
No Visual Studio, clique em um item com o boto direito do mouse, em seguida,
clique em Delete ou Rename. O contedo da caixa de dilogo varia dependendo
do comando.
Lista de elementos da interface do usurio para renomeaes ou
movimentaes
Make my current choice the default action for all future renames or moves
Especifica que sua escolha ser a ao padro das operaes posteriores de
renomear ou mover. Voc pode redefinir o padro em
Only rename or move item(s) locally
Especifica que os itens devem ser renomeados localmente. Os itens
renomeados ou movidos no mais estaro sob controle de verso.
Rename or move the item(s) locally and in the source control store
Especifica que os itens devem ser renomeados localmente e no banco de
dados. A verso mais recente da soluo ou projeto no refletir a
renomeao ou a movimentao at o prximo check-in.
You are about to rename or move the following
Lista os itens que voc selecionou para serem renomeados ou movidos.
Lista de elementos da interface do usurio para excluses
Delete the item(s) locally and in the source control store
Especifica que os itens devem ser excludos localmente e no banco de dados.
A verso mais recente da soluo ou projeto no refletir a operao de
excluso at o prximo check-in.
Make my current choice the default action for all future deletes
Especifica que a sua escolha ser a ao padro das operaes posteriores
de excluso.
Only delete item(s) locally

Visual Studio

34

Especifica que os itens devem ser excludos localmente. Outros membros da


equipe no so afetados por essa opo at o prximo check-in. Voc
precisar excluir manualmente os itens no banco de dados aps o check-in.
You are about to delete the following
Lista os itens que voc selecionou para excluso.

Caixa de dilogo Undo Checkout (Controle de Cdigo Fonte)


Reverte a opo de check-out do item selecionado na janela Solution Explorer. Voc
perder qualquer alterao feita desde o ltimo check-out.
Acesso caixa de dilogo
No Visual Studio, selecione um item na janela Solution Explorer. No menu File,
clique em Source Control e em seguida clique em Undo Checkout.
Observao
Esta caixa de dilogo tambm disponibilizada clicando-se com o boto direito no item na janela
Solution Explorer.
Columns
Identifica as colunas a serem exibidas e a ordem na qual elas so exibidas.
Flat View
Exibe os itens como listas simples sob a sua conexo com o controle de
cdigo fonte.
Name
Exibe os nomes dos itens para os quais ser desfeito o check-out. Os itens
aparecem com as caixas de seleo ao seu lado selecionadas. Se voc no
deseja desfazer o check-out de um item, desmarque sua caixa de seleo.
Options
Exibe opes para desfazer o check-out especficas de plug-ins de controle
de cdigo fonte quando a seta direita do boto selecionada.
Sort
Altera a ordem de classificao das colunas de exibio.
Tree View
Exibe a pasta e a hierarquia dos itens nos quais voc est revertendo o
check-out.
Undo Checkout
Reverte o check-out.

Visual Studio

35

Configuraes do Visual Studio


Configuraes no Visual Studio consistir de personalizaes feitas para o ambiente
de desenvolvimento integrado (IDE) com base em diferentes tipos de atividades de
desenvolvimento e seus prprios personalizaes. Essas personalizaes incluir
mostrar ou ocultar determinada layouts janela, colocao dos comandos de menu,
nomes de menu, modelos disponveis na caixa de dilogo Novo projetos, janelas de
ferramentas, predefinidas combinaes de teclas de atalho, e ajuda filtros, e assim
por diante.
Com configuraes, voc pode:

Criar uma cpia das suas configuraes ativa para uso em uma segunda
mquina
Compartilhar suas configuraes Ativa com outros desenvolvedores
Permitir todos os membros da equipe para usar as mesmas configuraes em
Selecione reas, como o editor, sem remover personalizaes para outras reas
individuais

Quais so configuraes?
Configuraes so personalizaes ao IDE, como layouts janela, padres editor, e
opes caixa dilogo disponveis que voc pode salvar, Exportar, importar, ou
redefinir para facilitar o IDE para usar.
As configuraes Ativa consistem em duas partes: predefinidas personalizaes do
arquivo instalado.vssettings voc selecionou na primeira vez voc iniciou Visual
Studio e qualquer personalizao IDE subseqentes que voc fez. Configuraes
ativa so salvas por padro no currentsettings.vssettings arquivo.
Para obter mais informaes sobre as configuraes predefinidas disponveis com
Visual Studio, consulte os seguintes tpicos.
Como configuraes funcionam?
Quando voc inicia Visual Studio, primeiro necessrio para selecionar uma
coleo configuraes que contm configuraes predefinidas projetadas para
corresponder seus hbitos de desenvolvimento. Se voc atualizar para outro edio
do Visual Studio, voc tambm ter a opo de aplicar configuraes a outros
edio na usando a My Previous Settings opo. A coleo configuraes o
primeiro elemento de suas configuraes ativa. Cada vez que fizer uma alterao
em uma configurao controlada pelo Visual Studio, como alterar a cor do
commented cdigo no Editor, a alterao automaticamente salvo para
currentsettings.vssettings juntamente com as configuraes predefinidas. O Visual
Studio aplica suas configuraes ativa automaticamente sempre que voc iniciar o
Visual Studio.
Em alguns casos, voc pode alterar as configuraes aplicadas como parte de uma
coleo predefinida Por exemplo, se uma coleo configuraes simplificada caixa
de dilogo Opes, ocultando pginas, voc pode exibir essas pginas
manualmente, selecionando Show all settings. Em outros casos, voc no pode
substituir a configurao predefinida sem aplicar uma coleo diferente. Para obter
uma lista detalhada das personalizaes includos no configuraes predefinidas,
consulte Configuraes do Visual Studio. Para obter informaes sobre como aplicar
colees configuraes diferentes, consulte Como: Alterar configuraes
selecionadas.

Visual Studio

36

Configuraes podem ser aplicadas de duas maneiras: completamente voc pode


substituir as configuraes Ativa com novas configuraes ou voc pode substituir
uma parte de suas configuraes ativa. Importar um arquivo que contm todas as
categorias configuraes possveis.vssettings ou aplicar outra coleo configuraes
dois substituiro as configuraes ativa completamente. Importar um arquivo que
contm somente um subconjunto das categorias configuraes ou unselecting
categorias configuraes em um arquivo.vssettings.vssettings s se aplica essas
configuraes que estiver selecionadas, deixando as configuraes ativos para as
categorias restantes intacto.
Ajuda e Configuraes
Colees configuraes predefinidas tambm fornecer personalizaes Ajuda.
Configuraes especificam o padro How Do I Pgina na Ajuda. Eu selecionado
como pendente eu pgina filtros fazer o contedo que aparece no ndice analtico e
no ndice,, bem como fornece contedo personalizado na caixa como guia. Voc
pode alterar o ativo How Do I pgina na lista drop-down como pendente eu outras
pginas.
Configuraes e segurana
Algumas categorias configuraes podem conter informaes sobre voc ou seu
computador que pode ser uma questo de segurana se voc compartilhar suas
configuraes com outros usurios. Inversamente, se voc pretende importar
configuraes fornecidas por outras pessoas, voc precisar estar ciente das
categorias dentro do arquivo configuraes que podem ser uma questo de
segurana. Um cone aparece ao lado essas categorias com as possveis questes
de segurana. Essas categorias configuraes incluem:

Favoritos

Importar e exportar configuraes

Como: Alterar configuraes selecionadas


Voc pode aplicar um sub-set das configuraes de uma coleo configuraes
diferentes para as configuraes atuais para criar um ambiente de desenvolvimento
mais personalizada. Para obter mais informaes sobre configuraes predefinidas,
consulte Configuraes do Visual Studio.
Para alterar configuraes selecione
1.

No menu Tools, escolha Import and Export Settings.

2.

Na Welcome to the Import and Export Settings Wizard Pgina, clique


em Import selected environment settings e clique em Next.

3.

Na pgina Save Current Settings, selecionar Yes, save my current


settings, e clique em Next

4.

No Which collection of settings do you want to import, selecione uma


coleo configuraes na lista e clique em Next.

5.

No Which settings do you want to import, expanda a lista e selecione


apenas a categorias ou itens de categoria que voc deseja que se aplicam as
configuraes atuais.

6.

Clique em Finish.
A Reset Complete pgina lista os erros associados a redefinindo as
configuraes com Details.

Visual Studio

37

Trabalhando com configuraes


Esta seo contm informaes sobre a aplicao, exportar e importar
configuraes para personalizar o ambiente de desenvolvimento integrado (IDE)
para melhor correspondncia seu estilo de desenvolvimento. Voc tambm pode
encontrar informaes gerais sobre como configuraes funcionam e os tipos de
itens que so personalizadas atravs das configuraes. Alm disso, aprender a
especificar um conjunto de configuraes de uso da equipe.

COMO: Compartilhar configuraes entre computadores


Voc pode exportar configuraes para o editor, projetos, depurao, fontes e
cores, e outras reas IDE a um arquivo que voc pode importar e usar em outro
computador, como seu computador de desenvolvimento segundo ou computador
um colega na.
Exportar configuraes para um arquivo
Voc pode optar por exportar todas ou algumas das suas configuraes atuais a um
arquivo.vssettings que voc pode usar em um computador segundo ou compartilhar
com outros desenvolvedores.
Para exportar configuraes
1.

No menu Tools, escolha Import and Export Settings.

2.

Na Welcome to the Import and Export Settings Wizard Pgina, clique


em Export selected environment settings e clique em Next.

3.

No Which settings do you want to export?, selecione as categorias voc


pretende exportar e, em seguida, clique em Next Configuraes.
Observao
Algumas categorias configuraes podem conter informaes sobre voc ou seu computador que pode ser
uma questo de segurana. Essas categorias configuraes so identificadas por um cone de aviso
amarelo e preto.

4.

No What do you want to name your settings file, digite um nome para o
arquivo de configuraes.

5.

Se voc gostaria de salvar o arquivo em um local diferente, clique Browse


ou digite um novo caminho para Store my settings file in this directory.

6.
7.

Clique em Finish.
Na pgina Export Complete, examine os erros associados exportao as
configuraes com Details.

Importar um arquivo.vssettings
Aps ter criado um arquivo.vssettings, voc pode usar esse arquivo em outros
computadores ao importar esse arquivo para outra instalao do Visual Studio.
Voc tambm pode importar arquivos de configurao criados por outros usurios e
aplicar essas configuraes para o Visual Studio.
Se voc est importando o arquivo configuraes contm todas as categorias
configuraes possveis, importar esse arquivo completamente substitui as
configuraes existentes. Importar o arquivo se um arquivo de configuraes

Visual Studio

38

contm apenas um subconjunto das categorias configuraes, apenas aplica essas


categorias e no afeta as configuraes atuais para categorias no importadas.
Um desenvolvedor na equipe por exemplo, tem exportadas todas as sua
configuraes para um arquivo para que outras pessoas na equipe podem utiliz-lo.
Se voc desejar se aplicar as configuraes de fontes e cores e as configuraes
teclado desse arquivo, somente voc pode limpar todos os outras categorias
configuraes e apenas aplicar as configuraes selecionadas sem alterar as
configuraes atuais para as categorias restantes
Para importar configuraes
1.

No menu Tools, escolha Import and Export Settings.

2.

Na Welcome to the Import and Export Settings Wizard Pgina, clique


em Import selected environment settings e clique em Next.

3.

Logon Save Current Settings, optar Yes, save my current settings por
criar um backup de suas personalizaes IDE atuais; optar No, just import
new settings, overwriting my current settings por continuar sem fazer o
backup suas personalizaes IDE atuais.

4.

No What collection of settings do you want to import?, selecione um


arquivo na lista ou clique Browse para localizar um arquivo de configuraes
e clique em Next.

5.

No Which settings do you want to import?, selecione as configuraes


opes voc pretende importar do arquivo.vssettings selecionado.
Observao
Algumas categorias configuraes podem conter informaes que podem ser uma questo de segurana.
Essas categorias configuraes so identificadas por um cone de aviso amarelo e preto.

6.

Clique em Finish.

7.

Na caixa Save Current Settings de dilogo, decidir se deve ou no para


salvar as configuraes atuais.

8.

Na pgina Import Complete, examine os erros associados a importar as


configuraes em Details.

Compartilhar um arquivo nico.vssettings entre computadores


Em vez de criar uma cpia das suas configuraes atuais e usando a cpia em
outro computador, voc pode compartilhar um arquivo.vssettings nico em um
compartilhamento de rede. Essa tcnica pode ser til se voc desejar as
personalizaes mesmas exatas disponveis em todas as vezes em vrios
computadores.
Quando voc compartilhar um arquivo.vssettings nico em vrios computadores,
personalizaes feitas, independentemente do computador no qual voc torn-los
na, so salvas para o arquivo.vssettings. A lista Tarefas por exemplo, se voc
fechar a lista de tarefas em um computador, na prxima vez que voc iniciar o
Visual Studio em outros computadores, no ser exibida.
Para compartilhar um arquivo nico configuraes entre computadores
1.

No menu Tools, escolha Options

2.

Na pasta Environment, escolha Import and Export Settings.

Visual Studio

39

3.

Na Automatically save my settings to this file, digite uma pasta


compartilhada ou clique Browse para localizar um compartilhamento de rede.

4.

Clique em OK.

5.

No segundo computador, repita as etapas 1 a 4.

Como: Especificar configuraes para uma equipe


Quando estiver trabalhando em um grupo, ele pode ser til para que cada
desenvolvedor usar as configuraes mesmas exatas em algumas reas do
ambiente de desenvolvimento integrado (IDE), como o editor. Voc pode incentivar
Essa consistncia criando um arquivo.vssettings para um subconjunto de categorias
configuraes disponveis que todos os desenvolvedores de seu grupo podem usar.
Quando aplicado, essas configuraes da equipe no seria substituem qualquer
categoria no especificada no arquivo.vssettings, permitindo que desenvolvedores
individuais para manter personalizaes feitas para outras reas do IDE. Para obter
informaes sobre como criar um arquivo.vssettings, consulte COMO: Compartilhar
configuraes entre computadores.
O Visual Studio verifica que voc estiver usando a verso mais recente do
arquivo.vssettings de grupo sempre que voc iniciar o Visual Studio. Quaisquer
alteraes feitas no arquivo.vssettings so aplicadas automaticamente.
Para especificar um arquivo.vssettings para uso em um grupo
1.

Partir do Tools menu, escolha Options.

2.

Na pasta Environment, escolha Import and Export Settings.

3.

Selecione Use team settings file.

4.
5.

Insira um UNC ou caminho local, ou clique Browse para localizar o


arquivo.vssettings de grupo.
Clique OK para aplicar as configuraes.

Import and Export Settings Wizard


Use este assistente para exportar configuraes, importar configuraes, ou
substituir as configuraes para usar uma coleo configuraes predefinidas.
Opo

Descrio

Exportar configuraes de
ambiente selecionada

Salvar um subconjunto ou todas as suas configuraes existentes para


que voc pode usar essas configuraes em outro computador.

Importar configuraes de
ambiente selecionada

Aplica as configuraes em um arquivo voc tiver recebido. Substitui


existentes configuraes com os do arquivo importado.

Redefinir todas as
configuraes

Permite que voc se reverter as configuraes de volta para uma das


configuraes predefinidas disponveis com o produto.

Voc pode acessar este assistente a partir do Tools Menu, escolhendo Import and
Export Settings.

Visual Studio

40

Escolha Configuraes para exportar, importar e exportar


configuraes Assistente
Use esta pgina do Assistente para configuraes a importao e exportao para
especificar algumas ou todas as suas configuraes atuais ser exportados para um
arquivo para uso em outros computadores. Voc pode acessar este assistente a
partir do Tools menu clicando Import and Export Settings.

COMO: Compartilhar configuraes entre computadores

Which settings do you want to export?


Selecione para exportar todas as configuraes, ou especificar um sub-set
das configuraes por categoria ou item de categoria.
Observao
Configuraes que podem conter informaes de identificao sobre voc ou seu computador so
marcadas com um grfico de aviso. Essas configuraes no so selecionados por padro, mas so
automaticamente selecionados se voc escolher All Settings.

Nomeie O arquivo de configuraes, importar e exportar configuraes


Assistente
Use esta pgina do Assistente para configuraes a importao e exportao para
especificar o nome e local do arquivo que ir conter as configuraes exportadas.
Voc pode acessar este assistente a partir do Tools menu clicando Import and
Export Settings.
COMO: Compartilhar configuraes entre computadores
What do you want to name your settings file?
Digite um nome personalizado para as configuraes exportadas.
Store my settings file in this directory.
Especifica o diretrio padro no qual as configuraes exportadas sero
salvos. Clique Browse para especificar uma pasta personalizada.

Salvar configuraes atuais, importar e Assistente para exportao


configuraes
Use esta pgina do Assistente para configuraes a importao e exportao para
salvar as configuraes ativos antes de importar novas configuraes. Voc pode
acessar este assistente a partir do Tools menu clicando Import and Export
Settings.
COMO: Compartilhar configuraes entre computadores
Yes, save my current settings
Selecione esta opo para criar um backup das suas configuraes atuais.
Mais tarde voc pode optar por importar essas configuraes para retornar
ao estado IDE atual.

Visual Studio

41

Setting file name

Digite um nome personalizado para as configuraes atuais.

Store my settings file in


this directory

Especifica o diretrio padro no qual as configuraes atuais sero salvos.


Clique Browse para especificar uma pasta personalizada.

No, just import new settings, overwriting my current settings


Selecione esta opo se voc no quiser backup as configuraes atuais. Se
voc est importando o arquivo configuraes contm configuraes para
itens de categoria voc ter personalizado, as configuraes importadas
substituir as alteraes.

Escolha Configuraes para importar, importar e Assistente


configuraes exportao
Use esta pgina do Assistente para configuraes a importao e exportao para
especificar a coleo Configuraes voc pretende importar. Voc pode acessar este
assistente a partir do Tools menu clicando Import and Export Settings.

COMO: Compartilhar configuraes entre computadores

Which settings do you want to import?


Selecione uma coleo na lista, ou clique Browse para localizar uma coleo
diferente para importar.
Description
Exibe informaes sobre a coleo configuraes que so otimizadas para.
Somente disponvel para Default Settings.

Escolha um coleo de configuraes para importar, importar e


Assistente configuraes exportao
Use esta pgina do assistente Importar e exportar configuraes para especificar
uma coleo configuraes predefinidos ou uma coleo configuraes
personalizadas voc deseja importar para uso no IDE. Voc pode acessar este
assistente a partir do Tools menu clicando Import and Export Settings.

Como: Alterar configuraes selecionadas

Which collection of settings do you want to import?


Lista as colees configuraes disponveis. Clique Browse para navegar
para uma coleo configuraes que no aparece na lista.
Description
Exibe informaes sobre a coleo configuraes que so otimizadas para.
Para obter mais informaes sobre colees configuraes predefinidas,
consulte Configuraes do Visual Studio.

Visual Studio

42

<task> Complete, Import and Export Settings Wizard


Esta pgina do importao e assistente exportar para configuraes exibe
informaes sobre a tarefa configuraes concluda com xito ou no e todos os
erros que foram encontrados. Voc pode acessar este assistente a partir do Tools
menu clicando Import and Export Settings.
Details
Exibe informaes sobre qualquer sucesso ou falhas.

Visual Studio

43

Walkthroughs Visual C#
As explicaes passo a passo fornecem instrues passo a passo para cenrios
comuns, que o torna um bom local para iniciar o aprendizado sobre o produto ou
uma rea de um recurso especfico.
Esta seo contm links para C# programao orientaes e depurao
orientaes.

Explicao Passo a Passo: Criando um XML Web Services


usando Visual Basic ou Visual C#
Explicao passo a passo a seguir descreve o processo para criar um XML Web
Services que converte temperaturas medidas em Fahrenheit para Celsius usando
Visual Basic ou C# visual.
Voc durante esta explicao passo a passo, voc ir realizar as atividades a
seguir:

Criar um XML Web Services usando o modelo projeto servio ASP.NET Web.

Implementar o XML Web Services.

Executar o XML Web Services no modo de depurao.

Implantar o XML Web Services.

Para concluir o explicao passo a passo, voc precisar ter acesso a uma mquina
que atende aos requisitos para criar um projeto da Web. Para obter mais
informaes, consulte Tour guiado da criao de sites no Visual Web Developer e
Passo a passo: Criando e usando um servio da Web do ASP.NET no Visual Web
Developer.
Criar projeto servio XML da Web
O Visual Studio fornece um modelo de projeto ASP.NET Web Service para ajud-lo
a criar XML Web Services no Visual Basic e Visual C#.
Para criar um ASP.NET Web Service Project
1.

No menu File, escolha New Web Site.

2.

Na caixa de dilogo New Web Site, selecione o cone ASP.NET Web


Service.

3.

Digite o endereo do servidor Web no qual voc ir desenvolver o XML Web


Services e especifique TempConvert1 como o nome do diretrio, tal como "
http://MyServer/TempConvert1 ". Por padro, o projeto usa seu computador
local, " http://localhost ".

Observao
Para alguns tipos de projeto, o caixa de texto Name est disponvel porque especificando a localidade
define em vez disso o nome do projeto. Por exemplo, aplicativos da Web e XML Web Services esto
localizados em um servidor Web e derivam seus nomes do diretrio virtual especificado no servidor.

Observao
Voc desenvolve XML Web Services em um servidor de desenvolvimento. Por padro, o servidor de
desenvolvimento sua mquina local. Normalmente, voce desenvolve e constri o projeto em um

Visual Studio

44

servidor de desenvolvimento, e ento voc o implementa em outro servidor (o servidor se implementao)


que ir hospedar o XML Web service usando um projeto de implementao. Entretanto, se voc estiver
desenvolvendo diretamente no servidor que hospedar o XML Web Services, o servidor de
desenvolvimento e o servidor de implantao so os mesmos.
4.

Clique OK para criar o projeto.

O Visual Studio automaticamente cria os arquivos necessrios e inclui as


referncias necessrias para suportar um XML Web Services. Quando voc criar um
projeto XML Web Services no Visual Studio, ver o criador de componente para
Service1.asmx.
Implementar o servio da Web XML
A prxima etapa escrever o cdigo para implementar a funcionalidade do XML
Web Services que os clientes iro acessar. Para XML Web Services criados no Visual
Studio, um arquivo oculto code-behind associado ao arquivo.asmx do XML Web
Services que o Visual Studio criou para voc contm esse cdigo. Para obter mais
informaes, consulte COMO: Criar um Mtodo de Servio da Web XML.
Para adicionar um mtodo de XML Web Service
1.

No arquivo cdigo Service.vb, localize o cdigo para a declarao de classe

Service. Substituia o cdigo de atributo System.Web.Services.WebService com o

seguinte cdigo antes da declarao de classe (mostrada em negrito):


Visual Basic
<System.Web.Services.WebService( _ Namespace:="http://Walkthrough/XmlWebServices/", _
Description:="A temperature conversion service.")> _ Public Class Service
[System.Web.Services.WebService( Namespace="http://Walkthrough/XmlWebServices/",
Description="A temperature conversion service.")] public class Service :
System.Web.Services.WebService

Unindo o atributo WebService classe Public se torna possvel a incluso de


informao adicional sobre o XML Web Service, como um namespace para o
XML Web Service e uma descrio para o XML Web Service. A propriedade
description desse atributo est includa na pgina de ajuda de Service. Para
obter mais informaes, consulte COMO: Usar o Atributo WebService.
2.

Na classe Service, adicione o seguinte cdigo para declarar a funo


ConvertTemperature:
Visual Basic
<WebMethod(Description:="This method converts a temperature in " & _ "degrees Fahrenheit to
a temperature in degrees Celsius.")> _ Public Function ConvertTemperature(ByVal dFahrenheit
As Double) _ As Double Return ((dFahrenheit - 32) * 5) / 9 End Function
[WebMethod(Description="This method converts a temperature in " + "degrees Fahrenheit to a
temperature in degrees Celsius.")] public double ConvertTemperature(double dFahrenheit) {
return ((dFahrenheit - 32) * 5) / 9; }

Anexando o atributo WebMethod a um mtodo Public expe esse mtodo como


parte do XML Web Services. A propriedade description deste atributo est
includo na pgina ajuda de Service e na pgina de ajuda Service Methods.
Para obter mais informaes, consulte COMO: Usar o Atributo WebMethod.
3.

Clique com o boto direito do mouse Service.asmx em Solution Explorer e


clique Set as Start Page no menu de atalho.

Visual Studio

45

4.

Salvar a soluo.

Depurar o XML Web Service


O Visual Studio oferece vrios mtodos para criar e executar um XML Web Services
a partir da IDE, tais como:

Iniciar (com depurao)

Iniciar sem depurao

Modo de Exibio no navegador

Como um projeto Visual Studio, este XML Web Services tem configuraes
separadas para as verses de lanamento e depurao. Como voc criou este
projeto usando o modelo de projeto do servio da Web ASP.NET, Visual Studio
automaticamente criou essas configuraes e definiu as opes padro apropriadas
e outras configuraes. Para obter mais informaes, consulte HOW TO: definir
depurao e configuraes de verso.
Nesta explicao passo a passo, ser colocado um ponto de interrupo no XML
Web Services e usado o mtodo Start (with Debugging). Para obter mais
informaes, consulte Como Depurar XML Web Services em Cdigo No
Gerenciado.
Antes de depurao, verifique as configuraes de depurao. Para obter mais
informaes, consulte Projetos Servio da Web XML depurao preparao:.
Para usar um ponto de interrupo e iniciar o XML Web Services com depurao
1.

No menu Debug, escolher New Breakpoint, ento Break At Function.


Na guia Function, digite ConvertTemperature na caixa Function e clique
OK para adicionar um ponto de interrupo na declarao de mtodo
ConvertTemperature.

2.

No menu Debug, clique em Start, clique Ok na janela Debugging Not


Enabled para iniciar depurao.
Este comando instrui o Visual Studio a executar o XML Web Services no
depurador. O Visual Studio cria o projeto e o implanta para o servidor de
desenvolvimento designado. Aps a concluso, o navegador padro exibe o
arquivo.asmx a partir do servidor de implantao.
Quando voc abre um arquivo.asmx em um navegador, o XML Web Services
retorna uma pgina Service auxiliar que fornece informaes sobre o XML
Web Services. O Service Description link leva voc para um documento XML
que contm a descrio servio formal do XML Web Services. Para obter mais
informaes, consulte XML Web Service Description.

3.

Na pgina de ajuda Service, clique no link ConvertTemperature.

4.

Na caixa dFahrenheit, digite o nmero 212, e clique no boto Invoke.


Quando o processamento atingir a funo ConvertTemperature, o processamento
pra. O depurador Visual Studio reala a linha que contm o ponto de
interrupo; enquanto ele interrompido, voc pode executar uma variedade
de tarefas. Para obter mais informaes, consulte Explicao detalhada sobre
o depurador e Exibindo Dados no Depurador.

5.
6.

No menu Debug, clique em Continue para continuar o processamento.


O XML Web Services responde retornando o valor convertido em um
documento XML semelhante ao seguinte:

Visual Studio

46

<?xml version="1.0" encoding="utf-8" ?> <double


xmlns="http://Walkthrough/XmlWebServices/">100</double>

Para interromper a execuo do XML Web Services e retornar ao editor de


cdigo, no menu Debug, clique em Stop Debugging.
7.

No menu Debug, clique em Delete All Breakpoints.

Implantando o XML Web Service


Para tornar seu XML Web Services disponvel para outros, voc deve implant-lo
em um servidor Web que seja acessvel para os clientes que voc queira dar
suporte. Para distribuir o XML Web Services para um servidor que no seja o
servidor de desenvolvimento, voc pode adicionar um projeto Web Setup ou copiar
os arquivos necessrios para o servidor de destino. Nesta explicao passo a passo,
voc pode escolher como implantar este XML Web Services. Para obter mais
informaes, consulte COMO: Implantar Servios da Web XML no Cdigo
Gerenciado.
Para implantar o XML Web Services usando um projeto Web Setup
1.
2.
3.

No menu File, aponte para Add, e clique New Project.


Selecionar o n Other, e o n Setup and Deployment Projects, e clique
em Web Setup Project.
Na caixa Name, digitar TempConvert1WebSetup, e clique OK.

Observao
Por padro, o instalador usa o nome do projeto de implantao ao criar o diretrio virtual em seu servidor
de implantao.
4.

No painel esquerdo do File System Editor, selecione Web Application


Folder. Para obter mais informaes, consulte File System Editor.

5.

No Solution Explorer, clique com o boto direito do mouse em


TempConvert1WebSetup, aponte para Add, e clique Project Output.

6.

Na caixa de dilogo Add Project Output Group, selecione Content Files.


Para obter mais informaes, consulte Como adicionar e remover Outputs
Project no File System Editor:.

O grupo Content Files consiste dos seguintes arquivos para o XML Web
Services: Service1.asmx, GLOBAL.asax, e Web.config. Para obter mais
informaes, consulte COMO: Implantar Servios da Web XML no Cdigo
Gerenciado.

7.
8.

Clique em OK.
No Solution Explorer, clique com o boto direito do mouse no
projetoTempConvert1WebSetup, e no menu de atalho, clique Build.
Isso cria um arquivo do Windows Installer no diretrio de projeto local.
Executar este arquivo instala o aplicativo da Web.

Para implantar o XML Web Services, copiando o projeto


1.

No Solution Explorer, selecione o projeto TempConvert1.

2.

No menu Project, clique em Copy Web Site.

3.

Clique no cone ao lado da caixa suspensa Connect To para abrir a caixa de


dilogo Open Web Site. Navegue para a localidade para a qual voc deseja
copiar o projeto.

Visual Studio

47

4.
5.

No painel Source Web Site, selecione os arquivos para copiar e mov-los


para o painel Remote Web Site, clicando no cone de seta direita. .
Clique Copy Web Site para copiar o site.

Finalmente, para criar um aplicativo cliente que acesse esse XML Web Services,
consulte um destes procedimentos:

Passo-a-Passo: acessando um XML Web Services utilizando Visual Basic ou


Visual C#

Acessar um servio da Web XML usando C++ Walkthrough:

Acessar um servio da Web XML usando C++ e o CLR Walkthrough:

Passo-a-Passo: acessando um XML Web Services utilizando


Visual Basic ou Visual C#
A explicao passo-a-passo a seguir descreve o processo para acessar um XML Web
Services de um aplicativo criado com Visual Basic ou Visual C#.
Durante o curso desta explicao passo a passo, voc ir realizar as atividades a
seguir:

Criar um aplicativo cliente usando o modelo de projeto de aplicativo


ASP.NET.

Adicionar uma referncia da Web para um XML Web Services.

Escrever cdigo para acessar o XML Web Services.

Executar o aplicativo da Web no modo de depurao.

Implantar o aplicativo da Web.

Para concluir a explicao passo a passo, voc deve fornecer o seguinte:

Devido ao fato desta explicao passo a passo usar um aplicativo da Web


para acessar um XML Web Services, voc deve fornecer uma mquina que
atenda aos requisitos para criar um projeto da Web. Para obter mais
informaes, consulte Tour guiado da criao de sites no Visual Web Developer.
Voc tambm precisar de permisses suficientes para ser capaz de criar
projetos XML Web Services no computador onde seu servidor Web est. Para
obter detalhes, consulte Segurana de site ASP.NET (Visual Studio).
Um XML Web Services criado a partir desta explicao passo a passo:
Explicao Passo a Passo: Criando um XML Web Services usando
Visual Basic ou Visual C#
Criando um projeto cliente de XML Web Services

Nesta explicao passo a passo, voc vai criar um aplicativo simples da Web que
acessa o XML Web Services TempConvert1, que foi o nome dado ao XML Web
Services criado no Explicao Passo a Passo: Criando um XML Web Services usando
Visual Basic ou Visual C#.
Observao
Se voc alterou o nome do XML Web Services temperatura de converso ao cri-lo, basta substituir os
nomes apropriados onde aparece o nome TempConvert1 ao longo desta explicao passo a passo.
Criar um aplicativo ASP.NET

Visual Studio

48

1.

No menu File, escolha New Web Site.

2.

Na caixa de dilogo New Web Site, selecione o cone ASP.NET Web Site.

3.

Digite o endereo do servidor Web no qual voc ir desenvolver o aplicativo


da Web e especifique TempConvertClient1 como o nome do diretrio, tal
como " http://MyServer/TempConvertClient1 ". Por padro, o projeto usa sua
mquina local, " http://localhost ".

Observao
Para alguns tipos de projeto, a caixa de texto Name est indisponvel porque a especificao da localidade
define o nome do projeto no lugar. Por exemplo, aplicativos da Web e XML Web Services esto
localizados em um servidor Web e derivam seus nomes do diretrio virtual especificado nesse servidor.

Observao
Voc desenvolve aplicativos da Web em um servidor de desenvolvimento. Por padro, o servidor de
desenvolvimento sua mquina local. Tipicamente, voc desenvolve e compila o projeto em um servidor
de desenvolvimento e depois voc o implanta em outro servidor (o servidor de implantao) que hospeda
o aplicativo da Web usando um projeto de implantao. Entretanto, se voc estiver desenvolvendo
diretamente no servidor que hospeda o aplicativo da Web, o servidor de desenvolvimento e o servidor
implantao so os mesmos.
4.

Clique em OK para criar o projeto.

5.

No Solution Explorer, clique com o boto direito do mouse em


Default.aspx e escolha View Designer para abrir o designer.

6.

Da guia Web Forms da Toolbox, arraste uma Text Box, uma Label e um
Button para a superfcie de design de Default.aspx e organize-os ao seu
gosto.

7.

Clique com o boto direito do mouse no boto adicionado, Button1, e clique


em Properties no menu de atalho. Na janela Properties, defina a
propriedade Text como Convert.

8.

Clique com o boto direito do mouse no rtulo adicionado, Label1, e clique


em Properties no menu de atalho. Na janela Properties, desmarque a
propriedade Text para fazer deste um rtulo em branco.

Adicionando uma referncia da Web


Descoberta de XML Web Services o processo pelo qual um cliente localiza um XML
Web Services e obtm sua descrio de servio. O processo de descoberta de XML
Web Services no Visual Studio envolve interrogar um site da Web seguindo um
algoritmo predeterminado. A meta do processo localizar a descrio de servio,
que um documento XML que usa o WSDL (Web Services Description Language).
Para obter mais informaes, consulte Descoberta de XML Web Service.
A descrio de servio descreve quais servios esto disponveis e como interagir
com os servios. Sem uma descrio de servio, impossvel interagir com um XML
Web Services programaticamente. Para obter mais informaes, consulte Descrio
de XML Web Service.
Seu aplicativo deve ter um meio para se comunicar com o XML Web Services e para
localiz-lo em tempo de execuo. Adicionar uma referncia da Web ao seu projeto
para o XML Web Services faz isso por gerar uma classe proxy que interfaceia com o
XML Web Services e fornece uma representao local do XML Web Services. Para

Visual Studio

49

obter mais informaes, consulte Referncias da Web e Gerando um Proxy de XML


Web Service.
Adicionar uma referncia da Web
1.
2.

No menu Website, escolha Add Web Reference.


Na caixa URL da caixa de dilogo Add Web Reference, digite o URL para
obter a descrio de servio do XML Web Services que voc deseja acessar,
tal como http://localhost/TempConvert1/Service1.asmx. Clique no
boto Go para recuperar informaes sobre o XML Web Services.
- ou Se o XML Web Services est na mquina local, clique no link Web services
on the local machine no painel do navegador. Clique no link para o XML
Web Services TempConvert1 na lista fornecida para recuperar informaes
sobre o XML Web Services.

3.

Na caixa Web reference name, renomeie a referncia da Web para


ConvertSvc, que o namespace que voc usar para essa referncia da
Web.

4.

Clique em Add Reference para adicionar uma referncia da Web para o XML
Web Services destino. Para obter mais informaes, consulte Adicionando e
Removendo Referncias da Web.
O Visual Studio baixa a descrio de servio e gera uma classe proxy para
interfacear entre seu aplicativo e o XML Web Services.

Acessando o XML Web Services


Quando voc adiciona uma referncia para o XML Web Services ao seu projeto, a
prxima etapa consiste em criar uma instncia da classe proxy do XML Web
Services. Voc pode acessar os mtodos do XML Web Services da mesma maneira
que voc acessa quaisquer mtodos de objeto, chamando mtodos na classe proxy.
Quando o aplicativo chama esses mtodos, o cdigo da classe proxy gerado pelo
Visual Studio lida com as comunicaes entre seu aplicativo e o XML Web Services.
Primeiro, voc criar uma instncia da classe proxy do XML Web Services. Em
seguida, voc pegar um valor, fornecido em TextBox1, e far uma chamada para
o mtodo ConvertTemperature do XML Web Services usando a classe proxy.
Voc ento ir exibir o valor retornado do XML Web Services no Label1.
Acessar o XML Web Services
1.

2.

Clique duas vezes no boto Convert em WebForm1.aspx para criar um


mtodo de tratamento de evento para este boto e para exibir o arquivo
code-behind.
Insira o cdigo a seguir:
' Visual Basic Protected Sub Button1_Click(ByVal sender As Object, _ ByVal e as EventArgs)
Handles Button1.Click Dim ws As New ConvertSvc.Service Dim dFahrenheit As Double Dim
dCelsius As Double Try dFahrenheit = Convert.ToDouble(TextBox1.Text) dCelsius =
ws.ConvertTemperature(dFahrenheit) Label1.Text = dCelsius.ToString() Catch Label1.Text =
"Conversion failed." End Try End Sub // C# protected void Button1_Click (System.Object sender,
System.EventArgs e) { try { ConvertSvc.Service1 ws = new ConvertSvc.Service1(); double
dFahrenheit = Convert.ToDouble(TextBox1.Text); double dCelsius =
ws.ConvertTemperature(dFahrenheit); Label1.Text = dCelsius.ToString(); } catch { Label1.Text =
"Conversion failed."; } }

Visual Studio

50

Observao
O nome da classe de XML Web Services gerado ao adicionar uma referncia da Web pode diferir daquele
mostrado acima como Service1.
3.

Selecione Default.aspx no Solution Explorer.

4.

No menu Website, clique em Set as Start Page.

5.

Salve a soluo.

Para obter mais informaes, consulte Acessando um XML Web Services em Cdigo
Gerenciado.
Depurando o cliente de XML Web Services
O Visual Studio oferece vrios mtodos para criar e executar um aplicativo da Web
a partir do IDE, tais como:

Start (with Debugging)

Start without Debugging

View in Browser

Como um projeto do Visual Studio, este aplicativo da Web tem configuraes


separadas para verses Release e Debug. Desde que voc criou este projeto
usando o modelo de projeto de aplicativo ASP.NET, o Visual Studio
automaticamente criou essas configuraes e definiu as opes padro apropriadas
e outras configuraes. Para obter mais informaes, consulte Configuraes Debug
e Release.
Nesta explicao passo a passo, voc colocar um ponto de interrupo no evento
Button1_Click e usar o mtodo Start (with debugging). Para obter mais
informaes, consulte Depurando XML Web Services em Cdigo Gerenciado.
Antes da depurao, verifique as configuraes de depurao. Para obter mais
informaes, consulte Preparao de Depurao: Aplicativos ASP.NET.
Usar um ponto de interrupo e iniciar o aplicativo da Web com depurao
1.

No menu Debug, clique em New Breakpoint e em seguida escolha Break


At Function.
Digite Button1_Click na caixa Function e clique em OK para colocar um
ponto de interrupo no manipulador de eventos Button1_Click. Para obter
mais informaes, consulte Viso geral sobre pontos de interrupo.

2.

No menu Debug, clique em Start, depois clique em Ok na janela


Debugging Not Enabled para iniciar a depurao.
Este comando instrui o Visual Studio a executar o aplicativo da Web no
depurador. O Visual Studio compila o projeto e o implanta no servidor de
desenvolvimento designado. Aps a concluso, o navegador padro inicia e
navega para o arquivo .aspx no servidor implantao.

3.

Depois que a pgina exibida no navegador, digite o nmero 212 na caixa


de texto e depois clique no boto Convert.
Quando o processamento atinge o manipulador de eventos Button1_Click, o
processamento pra. O depurador do Visual Studio reala a linha que contm
o ponto de interrupo e, enquanto interrompido, voc poder executar uma

Visual Studio

51

variedade de tarefas. Para obter mais informaes, consulte Usando o


Depurador e Ferramentas de Depurao para Inspeo de seu Programa.
4.
5.

No menu Debug, clique em Continue para continuar o processamento.


O XML Web Services responde retornando o valor convertido e o aplicativo
define o texto do Label1 para 100.
Para interromper a execuo do aplicativo da Web e retornar ao editor de
cdigo, no menu Debug, clique em Stop Debugging.

6.

No menu Debug, clique em Clear All Breakpoints.

Implantando o cliente
Para tornar seu aplicativo da Web disponvel para outros, voc deve implant-lo em
um servidor Web que seja acessvel para os clientes que voc deseja dar suporte.
Para implantar o aplicativo da Web em um servidor que no seja o servidor de
desenvolvimento, voc pode adicionar um Web Setup Project ou copiar os arquivos
necessrios para o servidor de destino. Nesta explicao passo a passo, voc pode
escolher como implantar este aplicativo da Web. Para obter mais informaes,
consulte Implantando Aplicativos e Componentes.
Implantar o aplicativo da Web usando um Web Setup Project
1.

No menu File, aponte para Add e depois clique em New Project.

2.

Selecione o n Other e depois o n Setup and Deployment Projects e


depois clique em Web Setup Project.

3.

Na caixa Name, digite TempConvertClient1WebSetup e depois clique em


OK.

Observao
Por padro, o instalador usa o nome do projeto de implantao ao criar o diretrio virtual em seu servidor
de implantao.
4.

No painel esquerdo do File System Editor, selecione Web Application


Folder. Para obter mais informaes, consulte File System Editor.

5.

No Solution Explorer, clique com o boto direito do mouse em


TempConvertClient1WebSetup, aponte para Add e depois clique em
Project Output.

6.

Na caixa de dilogo Add Project Output Group, selecione Content Files.


Para obter mais informaes, consulte Adicionando e Removendo Sadas de
Projetos no File System Editor.

O grupo Content Files consiste nos arquivos restantes para o aplicativo


da Web, tais como WebForm1.aspx e Web.config.

7.
8.

Clique em OK.
No Solution Explorer, clique com o boto direito do mouse no projeto
TempConvertClient1WebSetup e, no menu de atalho, clique em Build.
Isso cria um arquivo do Windows Installer no diretrio do projeto local.
Executar este arquivo instala o aplicativo da Web.

Implantar o aplicativo da Web, copiando o projeto


1.

No Solution Explorer, selecione o projeto TempConvertClient1.

2.

No menu Project, clique em Copy Web Site.

Visual Studio

52

3.

Clique no cone ao lado da caixa suspensa Connect To para abrir a caixa de


dilogo Open Web Site. Navegue para a localidade que voc deseja copiar o
projeto.

4.

No painel Source Web Site, selecione os arquivos para copiar e mova-os para
o painel Remote Web Site, clicando no cone da seta direita.

5.

Clique em Copy Web Site para copiar o site da Web.

Um componente com Visual C# Walkthrough: criao


Componentes fornea reutilizveis cdigo sob a forma de objetos. conhecido
como um aplicativo que usa cdigo um componente,, criando objetos e chamar
suas propriedades e mtodos, um Cliente. Um cliente pode ou no pode estar no
mesmo conjunto como um componente ele usa.
Os seguintes procedimentos criar no entre si, de forma a ordem na qual voc
realiz-las importante.
Observao
As caixas de dilogo e comandos de menu que voc v podem ser diferentes das descritas em Help
(Ajuda) dependendo das configuraes ativas ou edio. Para alterar as configuraes, escolha Import
and Export Settings No menu Tools. Para obter mais informaes, consulte Configuraes do Visual
Studio.
Criando o projeto
Para criar a biblioteca de classes CDemoLib e o componente CDemo
1.

No menu File, selecione New e Project Para abrir caixa New Project de
dilogo. Selecione o Class Library modelo de projeto a partir da lista de
Visual C# tipos de projeto, e digite CDemoLib na caixa Name.

Observao
Sempre especifique o nome de um novo projeto ao cri-la. Isso define o espao para nome raiz, nome
conjunto, e nome do projeto, e tambm garante que o componente padro ser no espao para nome
correto.
2.

No Solution Explorer, clique com o boto direito do mouse CDemoLib e


selecione Properties a partir do menu de atalho. Observe que a Default
namespace caixa contm CDemoLib.
A raiz usado para qualificar os nomes dos componentes no conjunto. Por
exemplo, se dois conjuntos de mdulos (assemblies) fornecer componentes
nomeado CDemo, voc pode especificar seu CDemo componente usando
CDemoLib.CDemo

Feche a caixa de dilogo.


3.
4.

A partir do Project menu, escolha Add Component.


Na caixa Add New Item de dilogo, selecione Component Class e digite
CDemo.cs na caixa Name. Clique Add para crate o componente.
Um componente denominado CDemo adicionado sua biblioteca de classe.

5.

No Solution Explorer, clique com o boto direito do mouse CDemo.cs e


escolha View Code a partir do menu de atalho. Abre o editor de cdigo.

Visual Studio

53

Aviso imediatamente aps public partial class CDemo. o : Component Esta seo
designa a classe da qual a classe herda. Por padro, um componente herda
da classe Component fornecida pelo sistema. A Component classe fornece
vrios recursos para o componente, incluindo a capacidade para usar
designers.
6.

7.

No Solution Explorer, clique com o boto direito do mouse Class1.cs e


escolha Delete. Isso exclui a classe padro que fornecido com a biblioteca
de classes, como ele no ser ser usado nessa explicao passo a passo.
No menu File, optar Save All por salvar o projeto.

Adicionando Constructors e Destructors


Construtores controlar a maneira como o componente foi inicializado; o Finalize
mtodo controla a forma ele tears pressionada. Cdigo no construtor e o Finalize
mtodo da CDemo classe mantm uma contagem do nmero de CDemo objetos em
execuo no existncia.
Para adicionar cdigo para o construtor e destruidor da classe CDemo
1.

No total de ocorrncias de um nmero de identificao para cada instncia


da CDemo classe, e. Adicione variveis de membros para manter uma
execuo o Code Editor
public readonly int InstanceID; private static int NextInstanceID = 0; private static long
ClassInstanceCount = 0;

Porque e NextInstanceID variveis de membros so declaradas static, eles


existem somente no nvel de classe. o InstanceCount Todas as instncias do
CDemo que acessar esses membros usar os mesmos locais de memria.
Membros esttico sero inicializados na primeira vez a CDemo classe
mencionado no cdigo. Isso pode ser a primeira vez um CDemo objeto
criado, ou na primeira vez um dos membros esttico acessado.
2.

Localizar public CDemo() e public CDemo(IContainer container), a construtores padro


para a CDemo classe. No Visual C#, todos os construtores ter o mesmo nome
que a classe. O componente pode ter vrios construtores, com parmetros
diferentes, mas deve todas tero o mesmo nome que o componente.

Observao
O nvel de acesso dos construtores determina os clientes sero capazes de criar instncias da classe.
3.

Adicione o cdigo a public CDemo() Seguir para incrementar a contagem


instncia quando um novo CDemo for criado, e para definir o nmero de
identificao de instncia.

Observao
Sempre adicionar seu cdigo aps a chamada para InitializeComponent. Nesse momento, os componentes
constituintes ter sido inicializada.
4.

5.

InstanceID = NextInstanceID ++; ClassInstanceCount ++;

Como um readonly membro, InstanceID pode ser definida somente no


construtor.

Observao
Usurios familiarizados com ser multithreading destacar bastante rightly que atribuir InstanceID e
incrementando NextInstanceID deve ser uma operao atmico. Isso e outros problemas relacionados a

Visual Studio

54

segmentao est ilustrado no Um componente Multithreaded Simple com Visual C# Walkthrough:


criao.
6.

Adicione o seguinte mtodo depois do fim do construtor:


~CDemo() { ClassInstanceCount --; }

Este mtodo chamado e signified pelo caractere til (~) na frente do nome
de classe. a destruidor, O gerenciador de memria chama o destruidor
imediatamente antes ele finalmente reclaims memria ocupado pelo objeto
CDemo. Ao implementar um destruidor voc pode executar limpeza apenas
antes o componente removido da memria. No entanto, como voc poder
ver posteriormente nessa explicao passo a passo, h bons motivos para
recursos verso anterior.
Adicionar uma propriedade classe
A CDemo classe tem apenas uma propriedade, uma propriedade esttica que
permite que o cliente para descobrir quantos CDemo objetos no esto na memria
a qualquer dado momento. Mtodos podem ser criados no uma maneira
semelhante.
Para criar uma propriedade para a classe CDemo

Adicione a seguinte declarao propriedade classe CDemo, para permitir que


clientes se recuperar o nmero de instncias do CDemo.
public static long InstanceCount { get { return ClassInstanceCount; } }

Teste o componente
Para testar o componente, necessrio um projeto que o utiliza. Este projeto deve
ser o primeiro projeto que inicia quando voc pressiona o boto Executar.
Para adicionar o projeto cliente CDemoTest como o projeto de inicializao para a soluo
1.

No menu File, aponte para Add e escolha New Project para abrir a Add
New Project caixa de dilogo.

2.

Selecione o Windows Application modelo de projeto, digite CDemoTest na


caixa Name e clique em OK.

3.

Na Solution Explorer, clique com o boto direito do mouse CDemoTest e


clique na Set as Startup Project partir do menu de atalho.

Para usar o CDemo componente, o projeto teste cliente deve ter uma referncia para
o projeto de biblioteca de classes. Aps adicionar a referncia, ele uma boa idia
para adicionar uma using instruo ao aplicativo de teste para simplificar o uso de
componente.
Para adicionar uma referncia para o projeto de biblioteca de classes
1.

2.

Clique com boto direito no Solution Explorer, mouse no References n


imediatamente abaixo CDemoTest, e selecione Add Reference a partir do
menu de atalho.
Na caixa Add Reference de dilogo, selecione a Projects guia.

3.

Clique duas vezes o CDemoLib projeto de biblioteca de classes. Aparecer


CDemoLib sob o References n para o CDemoTest projeto.

4.

No Solution Explorer, clique com o boto direito do mouse Form1.cs e


selecione View Code a partir do menu de atalho.

Visual Studio

55

Ou seja, CDemoLib.CDemo adicionando a referncia CDemoLib, voc pode usar o


nome totalmente qualificado do componente CDemo.
Para adicionar uma usando instruo

Adicione a instruo a seguir using para a lista de using instrues na parte


superior da para Form1. o Code Editor
using CDemoLib;

Adicionando a using instruo, voc pode omitir o nome da biblioteca, e


consultar o tipo componente como CDemo.
Voc agora criar e usar um programa de teste para testar o componente.
Noes bsicas sobre vida til de objeto
O CDemoTest programa ser ilustram vida til de objeto do .NET Framework, criando
e liberar um grande nmero de CDemo objetos.
Para adicionar cdigo para criar objetos e verso CDemo
1.
2.

Clique Form1.cs[Design] para retornar para o designer.


Arraste at a Form1 superfcie de design. e Button Um Timer na guia All
Windows Forms do Toolbox
O componente nonvisual Timer aparece em uma superfcie de design
separadas abaixo do formulrio.

3.

Clique duas vezes no cone do timer1 para criar um mtodo tratamento de


eventos do evento do componente Tick timer1. Colocar o seguinte cdigo no
mtodo tratamento de eventos.
this.Text = "CDemo instances: " + CDemo.InstanceCount;

Legenda do formulrio em cada escala do timer, exibir a contagem instncia


atual para a CDemo classe. O nome de classe usado como um qualificador
para a propriedade estticos InstanceCount no est h necessidade de criar
uma instncia do CDemo para acessar um membro esttico.
4.

Localizar o construtor para Form1 (public Form1(). e adicione o cdigo a seguir


aps a chamada para InitializeComponent()),
timer1.Enabled = true;

Isso ir iniciar o cronmetro to logo o formulrio criado.


5.
6.

Clique na Form1.cs [Design] guia para retornar para o designer.


Clique duas vezes no Form1, para criar um mtodo tratamento de eventos
para eventos do boto Click. o Button Colocar o seguinte cdigo no mtodo
tratamento de eventos.
CDemo cd; int ct; for (ct = 0; ct < 1000; ct++) cd = new CDemo();

Esse cdigo pode aspecto estranhos para voc. Conforme cada instncia do
CDemo criado, a instncia anterior ser liberado. Quando o for loop for feito,
haver somente uma instncia do CDemo Esquerda. Quando o mtodo
tratamento de eventos-sai, mesmo essa instncia ser lanado, porque a
varivel cd sair do escopo.
Como voc pode ter guessed j no acontecem bastante dessa maneira.
Para executar e depurar o CDemoTest e CDemo projetos
1.

Pressione F5 para iniciar a soluo.

Visual Studio

56

O projeto cliente for iniciado, e Form1 ser exibido. Observe que a legenda do
formulrio exibe " 0 ". instncias CDemo:
2.

Clique no boto. A legenda do formulrio deve exibir " 1000". instncias


CDemo:
As instncias de CDemo foram todos liberados pelo tempo procedimento
tratamento de eventos do boto Click concludo. Por que no elas foi
finalizado? Alm BRIEF, o gerenciador de memria finalizes objetos em
segundo plano, com prioridade baixa. A prioridade apenas bumped backup
se obtm o Sistema com memria insuficiente. Este lenta esquema coleo
lixo permite a alocao Objeto muito rpida.

3.

Clique no boto Mais vrias vezes, observando a legenda. Em algum


momento, o nmero de instncias ir descartar inesperadamente Isso
significa o gerenciador de memria que tem recuperou a memria de alguns
dos objetos.
Observao
Se voc clicou mais de 10 vezes, e o nmero de CDemo instncias no tiver diminudo, talvez precise
ajustar o cdigo de modo que ele usa mais memria. Fechar o formulrio para retornar ao ambiente de
desenvolvimento, e aumentar o nmero de iteraes no for loop para 10000. Em seguida, execute o
projeto novamente.

4.

Repita a etapa 3. Voc obter farther neste momento antes o gerenciador de


memria finalizes mais objetos.
Na verdade, sempre que voc repita a etapa 3, voc provavelmente ser
capaz para alocar mais CDemo objetos antes a memria etapas Gerenciador
no. Isso porque mais e mais dos Visual Studio trocado Out, deixando mais
espao para instncias de CDemo.

5.

Fechar o formulrio para retornar ao ambiente de desenvolvimento.

Tarefas comuns usando marcas inteligentes em controles


Forms Windows fazendo Walkthrough:
Como voc construir formulrios e controles para seu aplicativo do Windows Forms,
h vrias tarefas voc executar repetidamente. Estes so alguns das tarefas
realizadas normalmente voc encontrar:

Adicionar ou remover uma guia na uma TabControl.

Encaixe um controle para seu pai.

Alterar a orientao de um SplitContainer controle.

Para acelerar o desenvolvimento, muitos controles oferecem marcas inteligentes


que so menus contextuais que permitem a voc para executar tarefas comuns
como essas em um nico gesto em tempo de criao. Essas tarefas so chamados
verbos de marca inteligente.
Marcas inteligentes permanecem anexado a uma instncia de controle para sua
vida til no designer e esto sempre disponveis.
Tarefas ilustradas nesta explicao passo a passo incluem:

Criar um Projeto Windows Forms

Visual Studio

57

Usando marcas inteligentes

Habilitando e desabilitando marcas inteligentes

Quando voc tiver terminado, voc ter uma compreenso da funo executado por
esses recursos importantes layout.
Observao
As caixas de dilogo e comandos de menu que voc v podem ser diferentes das descritas em Help
(Ajuda) dependendo das configuraes ativas ou edio. Para alterar as configuraes, escolha Import
and Export Settings No menu Tools. Para obter mais informaes, consulte Configuraes do Visual
Studio.
Criando o projeto
A primeira etapa para criar o projeto e configurar o formulrio.
Para criar o projeto
1.

2.

Criar um projeto chamado " SmartTagsExample " aplicativo baseado no


Windows. Para obter detalhes, consulte Como: Criar um projeto de aplicativos
Windows.
Selecione o formulrio no Windows Forms Designer.

Usando marcas inteligentes


Marcas inteligentes esto sempre em tempo de criao em controles que oferecemlos disponveis.
Para usar marcas inteligentes
1.

Arraste at o formulrio. de um TabControl a Toolbox Observe o glifo de


marca inteligente ( . o TabControl) que aparece na parte lateral do

2.

Clique o glifo de marca inteligente. No menu de atalho que aparece ao lado o


glifo, selecione o Add Tab item. Observar se uma nova pgina guia foi
adicionado ao TabControl.

3.
4.

5.
6.

Arraste um TableLayoutPanel controle de at seu formulrio. o Toolbox


Clique o glifo de marca inteligente. No menu de atalho que aparece ao lado o
glifo, selecione o Add Column item. Observar que uma nova coluna ser
adicionada para o TableLayoutPanel controle.
Arraste um SplitContainer controle de at seu formulrio. o Toolbox
Clique o glifo de marca inteligente. No menu de atalho que aparece ao lado o
glifo, selecione o Horizontal splitter orientation item. Observar que a
SplitContainer barra divisora do controle agora orientado horizontalmente.

Colees dos tipos padro com o


DesignerSerializationVisibilityAttribute Serializing
Walkthrough:
s vezes os controles personalizados ser expor uma coleo como uma
propriedade. Essa explicao passo a passo demonstra como usar a
DesignerSerializationVisibilityAttribute classe para controlar como uma coleo
serializado em tempo de criao. Aplicar o Content valor a sua propriedade coleo
garante que a propriedade ser ser serializado.

Visual Studio

58

Para copiar o cdigo contidas neste tpico como uma lista simples, consulte COMO:
Serializar colees de tipos padro com o DesignerSerializationVisibilityAttribute.
Observao
As caixas de dilogo e comandos de menu que voc v podem ser diferentes das descritas em Help
(Ajuda) dependendo das configuraes ativas ou edio. Para alterar as configuraes, escolha Import
and Export Settings No menu Tools. Para obter mais informaes, consulte Configuraes do Visual
Studio.
Pr-requisitos
A fim de concluir este explicao passo a passo, ser necessrio:

Permisses suficientes para poder para criar e executar projetos aplicativo do


Windows Forms no computador onde o Visual Studio est instalado.
Criar um controle que possui uma coleo Serializable

A primeira etapa consiste em criar um controle que tenha uma coleo Serializable
como uma propriedade. Voc pode editar o contedo da coleo usando este que
voc pode acessar a partir da Properties janela. o Collection Editor
Para criar um controle com uma coleo Serializable
1.

Criar um Projeto Biblioteca de Controle do Windows chamado


SerializationDemoControlLib. Para obter mais informaes, consulte
Modelo de Biblioteca de Controle do Windows.

2.

Renomear UserControl1 para SerializationDemoControl. Para obter mais


informaes, consulte Renomear identificadores como:.

3.

Na janela Properties, defina o valor da propriedade


System.Windows.Forms.Padding.All para 10.

4.
5.

Coloca um TextBox controle no SerializationDemoControl.


Selecione o TextBox controle. Na janela Properties, defina as propriedades
a seguir.

Propriedade

Alterar para

Multiline

true

Dock

Fill

ScrollBars

Vertical

ReadOnly

true

6.

Em declarar um campo denominado stringsValue na SerializationDemoControl


matriz de seqncia. o Code Editor
C#
// This field backs the Strings property. private String[] stringsValue = new String[1];

7.

Defina a Strings propriedade no SerializationDemoControl.

Observao
O Content valor usado para ativar a serializao de coleo.
C#

Visual Studio

59

// When the DesignerSerializationVisibility attribute has // a value of "Content" or "Visible" the designer
will // serialize the property. This property can also be edited // at design time with a CollectionEditor.
[DesignerSerializationVisibility( DesignerSerializationVisibility.Content )] public String[] Strings { get {
return this.stringsValue; } set { this.stringsValue = value; // Populate the contained TextBox with the
values // in the stringsValue array. StringBuilder sb = new StringBuilder(this.stringsValue.Length); for
(int i = 0; i < this.stringsValue.Length; i++) { sb.Append(this.stringsValue[i]); sb.Append("\r\n"); }
this.textBox1.Text = sb.ToString(); } }

Observao
As seqncias que voc digitou aparecem na TextBox. do SerializationDemoControl
A serializao uma propriedade da coleo
Para testar o comportamento serializao do seu controle, voc ser colocar ele em
um formulrio e alterar o contedo da coleo com o Collection Editor.. o
Collection Editor Voc pode ver o estado coleo serializado olhando para um
arquivo de designer especial, no qual cdigo emite. o Windows Forms Designer
Para serializar uma coleo
1.

Adicionar um projeto do Aplicativo do Windows soluo. Para obter mais


informaes, consulte Caixa de dilogo Add New Project. Nome do projeto
SerializationDemoControlTest.

2.

Na Toolbox, localizao na guia chamado SerializationDemoControlLib


Components. Em nessa guia, voc encontrar o SerializationDemoControl. Para
obter mais informaes, consulte A caixa de ferramentas com Components
personalizado Walkthrough: Populating automaticamente.

3.
4.

5.

Local em seu formulrio. um SerializationDemoControl


Localizar a Strings propriedade na janela Properties. Clique a Strings
propriedade, na elipse seguida, clique no String Collection Editor. (
boto para abrir

Digitar vrias seqncias no String Collection Editor. Separe-os,


pressionando a tecla ENTER no final de cada seqncia. Clique em OK
Quando voc tiver terminado inserir seqncias.

Observao
As seqncias que voc digitou aparecem na TextBox. do SerializationDemoControl
1.

No Solution Explorer, clique no Show All Files boto.

2.

Abra o Form1 n. Beneath um arquivo chamado Form1.Designer.cs ou


Form1.Designer.vb. Este o arquivo no qual emite cdigo que representa o
estado de seu formulrio e seus controles filho Design-time. o Windows
Forms Designer Abrir este arquivo no Code Editor.

3.

Abra a regio denominada Windows Form Designer generated code e


localize a seo rotulada serializationDemoControl1. Sob este rtulo o
cdigo que representa o estado de seu controle serializado. As seqncias
voc digitou na etapa 5 aparecem em uma atribuio para a Strings
propriedade. O exemplo de cdigo a seguir mostra um cdigo semelhante ao
que ser exibida se voc digitado seqncias " red ", " laranjas ", e " Amarelo
".

Visual Studio

60

C#
this.serializationDemoControl1.Strings = new string[] { "red", "orange", "yellow"};

C#
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]

Observao
Nesse caso, emite nenhuma atribuio para a Strings propriedade. o Windows Forms Designer
Prximas etapas
Depois que voc sabe como serializar uma coleo de tipos padro, considere
integrar os controles personalizados mais profundamente para o ambiente em
tempo de criao. Os tpicos a seguir descrevem como aprimorar a integrao em
tempo de criao do seu controles personalizados:

Arquitetura Design-time

Atributos do Windows Forms controles

Viso geral da serializao designer

Criando um controle do Windows Forms que Takes Advantage dos recursos


de tempo de design visual studio Walkthrough:

Walkthrough: depurao controles Forms do Windows


personalizados em tempo de design
Quando voc cria um controle personalizado, voc geralmente achar necessrio
para depurar seu comportamento em tempo de criao. Isso especialmente
verdadeiro se voc estiver criando um designer personalizado para o controle
personalizado. Para obter detalhes, consulte Criando um controle do Windows
Forms que Takes Advantage dos recursos de tempo de design visual studio
Walkthrough:.
Voc pode depurar os controles personalizados usando o Visual Studio, exatamente
como voc deseja depurar as outras classes .NET Framework. A diferena que
voc ir depurar uma instncia separada do Visual Studio que esteja executando
cdigo do seu controle personalizado
Tarefas ilustradas nesta explicao passo a passo incluem:

Criar um Projeto Windows Forms para hospedar o controle personalizado

Criar um Projeto Biblioteca de Controle

Adicionar uma propriedade a seu controle personalizado

Adicionando o controle personalizado ao formulrio host

Como configurar o projeto para design-time depurao

Depurao seu controle personalizado em tempo de criao

Quando voc tiver terminado, voc ter uma compreenso das tarefas necessrias
para depurao o comportamento em tempo de criao de um controle
personalizado.

Visual Studio

61

Observao
As caixas de dilogo e comandos de menu que voc v podem ser diferentes das descritas em Help
(Ajuda) dependendo das configuraes ativas ou edio. Para alterar as configuraes, escolha Import
and Export Settings No menu Tools. Para obter mais informaes, consulte Configuraes do Visual
Studio.
Criando o projeto
A primeira etapa consiste em criar o projeto de aplicativo. Voc usar este projeto
para criar o aplicativo que hospeda o controle personalizado.
Para criar o projeto

Criar um projeto do Aplicativo do Windows chamado " DebuggingExample ".


Para obter detalhes, consulte Como: Criar um projeto de aplicativos Windows.
Criar um Projeto Biblioteca de Controle

A prxima etapa para criar o projeto Biblioteca de Controle e configurar o controle


personalizado.
Para criar o projeto Biblioteca de Controle
1.

Adicione um Windows Control Library projeto para a soluo. Para obter


detalhes, consulte Caixa de dilogo Add New Project. Nome do projeto "
DebugControlLibrary ".

2.

Adicionar um novo UserControl item para o projeto DebugControlLibrary.


Para obter detalhes, consulte Como: Adicionar novos itens de projeto. D o
novo arquivo de origem uma nome de base de " DebugControl ".

3.

Usando a Solution Explorer, excluso, excluindo o arquivo com um nome


de base de cdigo padro do projeto controlar " " UserControl1. Para obter
detalhes, consulte COMO: Remover, excluir, e excluir itens.

4.

Compilar uma soluo.

Ponto de Verificao
Neste ponto, voc ser capaz para ver o controle personalizado no Toolbox.
Para verificar o seu andamento

Localizar o nova guia chamada DebugControlLibrary Components e clique


para selecion-lo. Ao ser aberto, voc ver seu controle listados como
DebugControl com o cone padro ao lado dela.
Adicionar uma propriedade ao seu controle personalizado

Para demonstrar que o controle personalizado na cdigo sendo executado em


tempo de criao, ser adicionar uma propriedade e definir um ponto de
interrupo no cdigo que implementa a propriedade.
Para adicionar uma propriedade ao seu controle personalizado
1.

Aberto DebugControl no Code Editor. Adicione o seguinte cdigo para a


definio de classe:
C#
private string demoStringValue = null;
[Browsable(true)]
public string DemoString
{ get

Visual Studio

62

{ return this.demoStringValue; }
set { demoStringValue = value; } }

2.

Compilar uma soluo.

Adicionando seu controle personalizado ao formulrio host


Para depurar o comportamento em tempo de criao do seu controle personalizado,
voc ir colocar uma instncia da classe controle personalizado em um formulrio
host.
Para adicionar o controle personalizado ao formulrio host
1.

No projeto " DebuggingExample ", abra Form1 no Windows Forms


Designer.

2.

Na Toolbox, abra a DebugControlLibrary Components guia e arraste


uma DebugControl instncia para o formulrio.

3.

Localizar a DemoString propriedade personalizada na janela Properties.


Observao que voc pode alterar seu valor como voc faria qualquer outra
propriedade. Tambm Observe que quando a DemoString propriedade est
selecionada, seqncia de caracteres de descrio da propriedade aparece na
parte inferior da janela Properties.

Configurando o Project para depurao de tempo de design


Voc para depurar comportamento em tempo de criao do seu controle
personalizado, ser depurar uma instncia separada do Visual Studio que esteja
executando cdigo do seu controle personalizado.
Para configurar o projeto para design-time depurao
1.

Clique com o boto direito do mouse no projeto DebugControlLibrary no e


selecione Properties. o Solution Explorer

2.

Na folha DebugControlLibrary de propriedades, selecione a Debug guia.


Na seo Start Action, marque Start external program. No ser
depurao uma instncia separada do Visual Studio, portanto clique a elipse.
( ) boto para procurar por Visual Studio IDE O nome do arquivo executvel
devenv.exe, e se voc instalado para o local padro, seu caminho ser "
8\Common7\IDE\devenv.exe Visual Studio C:\Program Files\Microsoft ".

3.
4.

Clique OK para fechar a caixa de dilogo.


Clique com o boto direito do mouse o DebugControlLibrary projeto e
selecione Set as StartUp Project Para ativar essa configurao de
depurao.

Depurao seu controle personalizado em tempo de design


Agora voc est pronto para depurar o controle personalizado medida que ele
executado em modo de design. Quando voc iniciar a sesso de depurao, ser
criada uma nova instncia do Visual Studio, e ir us-lo para carregar a soluo "
DebuggingExample ". Quando voc abre Form1 em uma instncia do seu controle
personalizado ser criado e ser iniciado executando. o Forms Designer
Para depurar o controle personalizado em tempo de criao
1.

Abrir o DebugControl arquivo de origem no e colocar um ponto de


interrupo no Set acessador da propriedade DemoString. o Code Editor

Visual Studio

63

2.

Pressione F5 para iniciar a sesso de depurao. Observe que uma nova


instncia do Visual Studio criado. Voc pode distinguir entre as instncias de
duas maneiras:
A instncia de depurao tem a palavra Running em sua barra de

ttulo
o

A instncia de depurao tem o Start Boto em sua Debug barra de


ferramentas desativado
O ponto de interrupo definido na instncia de depurao.

3.

4.

Na nova instncia do Visual Studio, abra a soluo " DebuggingExample ". A


soluo voc pode localizar facilmente selecionando Recent Projects no File
menu. O arquivo soluo " DebuggingExample.sln " ser listado como o
arquivo mais recentemente usado.
Abrir Form1 em e selecione o DebugControl controle. o Forms Designer

5.

Alterar o valor da propriedade DemoString. Observe que quando voc


confirmar a alterao, a instncia de depurao do Visual Studio obtm foco e
a execuo pra em seu ponto de interrupo. Voc pode passo nico atravs
o acessador Propriedade exatamente como. seria qualquer outro cdigo seu

6.

Quando voc tiver terminado com a sesso de depurao, voc pode sair,
descartando a instncia do Visual Studio hospedado ou clicando no Stop
Debugging boto na instncia de depurao.

Prximas etapas
Agora que voc pode depurar os controles personalizados em tempo de criao,
existem muitas possibilidades para expandir o controle na interao com o Visual
Studio IDE.

Voc pode usar a DesignMode propriedade da classe Component para


escrever cdigo que ser executada apenas em tempo de criao Para obter
detalhes, consulte DesignMode.

H vrios atributos voc pode aplicar a propriedades seu controle para


manipular o controle personalizado na interao com o designer. Voc pode
encontrar esses atributos no espao para nome System.ComponentModel.

Voc pode escrever um designer personalizado para o controle


personalizado. Isso permite total controle sobre a experincia de design usando
a infra-estrutura extensvel Designer expostos pelo Visual Studio. Para obter
detalhes, consulte Criando um controle do Windows Forms que Takes Advantage
dos recursos de tempo de design visual studio Walkthrough:.

Criando um controle do Windows Forms que Takes Advantage


dos recursos de tempo de design visual studio Walkthrough:
A experincia em tempo de design para um controle personalizado pode ser
aperfeioada pela criao um designer personalizado associado.
Essa explicao passo a passo ilustra como criar um designer personalizado para
um controle personalizado. Voc ir implementar um MarqueeControl tipo e uma
classe designer associado, chamado MarqueeControlRootDesigner.
O MarqueeControl tipo implementa uma exibio semelhante a um letreiro digital
theater, com luzes animado e texto flashing.

Visual Studio

64

O designer para este controle interage com o ambiente de design para fornecer
uma experincia Design-time personalizado. Com o designer personalizado, voc
pode montar uma implementao personalizada MarqueeControl com luzes animado e
flashing texto em vrias combinaes. Voc pode usar o controle montado em um
formulrio como qualquer outro controle Windows Forms.
Tarefas ilustradas nesta explicao passo a passo incluem:

Criando o projeto

Criar um Projeto Biblioteca de Controle

Referncia a Project controle personalizado

Definir um controle personalizado e seus designer personalizado

Criando uma instncia de seu controle personalizado

Configurando o Project para depurao de tempo de design

Implementar O controle personalizado

Criando um controle filho para O controle personalizado

Criar o controle filho MarqueeBorder

Criando um designer personalizado para sombra e propriedades de filtro

Tratamento alteraes componente

Adicionando verbos criador ao seu designer personalizado

Criando um UITypeEditor personalizada

Testando o controle personalizado no criador

Quando voc tiver terminado, o controle personalizado ser algo como o seguinte
aspecto:

Para a listagem cdigo completo, consulte COMO: Criar um controle de formulrios


do Windows que tira vantagem de recursos em tempo de criao.
Observao
As caixas de dilogo e comandos de menu que voc v podem ser diferentes das descritas em Help
(Ajuda) dependendo das configuraes ativas ou edio. Para alterar as configuraes, escolha Import
and Export Settings No menu Tools. Para obter mais informaes, consulte Configuraes do Visual
Studio.
Pr-requisitos
A fim de concluir este explicao passo a passo, ser necessrio:

Permisses suficientes para poder para criar e executar projetos aplicativo do


Windows Forms no computador onde o Visual Studio est instalado.
Criando o projeto

Visual Studio

65

A primeira etapa consiste em criar o projeto de aplicativo. Voc usar este projeto
para criar o aplicativo que hospeda o controle personalizado.
Para criar o projeto

Criar um projeto do Aplicativo do Windows chamado " MarqueeControlTest ".


Para obter mais informaes, consulte Como: Criar um projeto de aplicativos
Windows.
Criar um Projeto Biblioteca de Controle

A prxima etapa consiste em criar o projeto Biblioteca de Controle. Voc criar um


novo controle personalizado e seu designer personalizado correspondente.
Para criar o projeto Biblioteca de Controle
1.

Adicione um projeto Biblioteca de Controle do Windows para a soluo. Para


obter mais informaes, consulte Caixa de dilogo Add New Project. Nome do
projeto " MarqueeControlLibrary ".

2.

Usando Solution Explorer, Excluir controle padro do projeto, excluir o


arquivo de origem nomeado " UserControl1.cs " ou " UserControl1.vb ",
acordo com o idioma de escolha. Para obter mais informaes, consulte
COMO: Remover, excluir, e excluir itens.

3.

Adicionar um novo UserControl item para o MarqueeControlLibrary


projeto. Dar o novo arquivo de origem uma nome de base de "
MarqueeControl ".

4.

Usando Solution Explorer, criar uma nova pasta no projeto


MarqueeControlLibrary. Para obter mais informaes, consulte Como:
Adicionar novos itens de projeto.Nomeie a nova pasta " Design ".

5.

Clique com o boto direito do mouse na Design pasta e adicionar uma nova
classe. Fornecer o arquivo de origem uma nome de base de "
MarqueeControlRootDesigner ".

6.

Ser necessrio para usar tipos de montagem System.Design, ento


adicionar essa referncia para o MarqueeControlTest projeto. Para obter
mais informaes, consulte COMO: Adicionar e remover referncias no Visual
Studio (C#, J#).

Referncia a Project controle personalizado


Voc usar o MarqueeControlTest projeto para testar o controle personalizado. O
projeto teste tornar conhecer o controle personalizado quando voc adiciona uma
referncia ao conjunto MarqueeControlLibrary Projeto.
Para fazer referncia o projeto de controle personalizado

No projeto MarqueeControlTest, adicione uma referncia ao conjunto


MarqueeControlLibrary Projeto. Certifique-se de usar a Projects guia na caixa
Add Reference de dilogo em vez de referncia montagem
MarqueeControlLibrary diretamente.
Definir um controle personalizado e seus designer personalizado

O controle personalizado ser derivar a partir da UserControl classe. Isso permite


que o controle para conter outros controles, e ele fornece o controle uma grande
quantidade de funcionalidade padro.
O controle personalizado no ter um designer personalizado associado. Isso
permite que voc para criar uma experincia design exclusivo adequado
especificamente para o controle personalizado.

Visual Studio

66

Voc associar o controle ao seu designer, usando a DesignerAttribute classe. O


designer personalizado porque voc estiver desenvolvendo o comportamento
Design-time inteiro do seu controle personalizado, ser implementa a
IRootDesigner interface.
Para definir um controle personalizado e seu designer personalizado
1.

Abrir o MarqueeControl arquivo de origem no Code Editor. Na parte superior


do arquivo, importar os espaos para nome a seguir:
C#
using System; using System.Collections; using System.ComponentModel; using
System.ComponentModel.Design; using System.Drawing; using System.Windows.Forms; using
System.Windows.Forms.Design;

2.

Adicionar a declarao da MarqueeControl Classe. o DesignerAttribute Isto


associa o controle personalizado com seu designer.
C#
[Designer( typeof( MarqueeControlLibrary.Design.MarqueeControlRootDesigner ), typeof(
IRootDesigner ) )] public class MarqueeControl : UserControl {

3.

Abrir o MarqueeControlRootDesigner arquivo de origem no Code Editor. Na parte


superior do arquivo, importar os espaos para nome a seguir:
C#
using System; using System.Collections; using System.ComponentModel; using
System.ComponentModel.Design; using System.Diagnostics; using System.Drawing.Design; using
System.Windows.Forms; using System.Windows.Forms.Design;

4.

Coloque a definio para a MarqueeControlRootDesigner classe entre um espao


para nome chamado " MarqueeControlLibrary.Design ". Esta Declarao
coloca o designer em um espao para nome especial reservado para tipos
relacionados design-.
Alm disso, alterar da declarao do MarqueeControlRootDesigner para herdar da
classe DocumentDesigner.
C#
namespace MarqueeControlLibrary.Design {
[ToolboxItemFilter("MarqueeControlLibrary.MarqueeBorder", ToolboxItemFilterType.Require)]
[ToolboxItemFilter("MarqueeControlLibrary.MarqueeText", ToolboxItemFilterType.Require)]
[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Deman
d, Name = "FullTrust")] public class MarqueeControlRootDesigner : DocumentDesigner {

5.

Definir o construtor para a MarqueeControlRootDesigner classe. Inserir uma


WriteLine instruo no corpo construtor. Este ser til para fins de depurao.
C#
public MarqueeControlRootDesigner() { Trace.WriteLine("MarqueeControlRootDesigner ctor"); }

Criando uma instncia de seu controle personalizado


Para observar o comportamento em tempo de design personalizado do seu
controle, voc ir colocar uma instncia do seu controle no formulrio no
MarqueeControlTest projeto.

Visual Studio

67

Para criar uma instncia de seu controle personalizado


1.

Adicionar um novo UserControl item para o MarqueeControlTest projeto.


Dar o novo arquivo de origem uma nome de base de " DemoMarqueeControl
".

2.

Na parte superior do arquivo, importar espao para nome


MarqueeControlLibrary:
Visual Basic
Imports MarqueeControlLibrary using MarqueeControlLibrary;

3.

Alterar da declarao do DemoMarqueeControl para herdam a


MarqueeControl classe.

Visual Basic
Public Class DemoMarqueeControl Inherits MarqueeControl public class DemoMarqueeControl :
MarqueeControl

4.

Criar o projeto.

5.

Aberto Form1 no Windows Forms Designer.

6.
7.

Localizar na guia " Meus Controles de usurio " na e abri-lo. o Toolbox


Arraste at o formulrio. de um DemoMarqueeControl a Toolbox
Criar o projeto.

Configurando o Project para depurao de tempo de design


Quando voc estiver desenvolvendo uma experincia Design-time personalizado,
ele ser necessrio para depurar o controles e componentes. No uma maneira
simples para instalar o seu projeto para permitir a depurao em tempo de criao.
Para obter mais informaes, consulte Walkthrough: depurao controles Forms do
Windows personalizados em tempo de design.
Para configurar o projeto para design-time depurao
1.

Clique com o boto direito do mouse o MarqueeControlLibrary projeto e


selecione Properties.

2.

Na caixa de dilogo ' pginas Propriedades MarqueeControlLibrary ',


selecione a Configuration Properties pgina.

3.

Na seo Start Action, marque Start External Program. No ser


depurao uma instncia separada do Visual Studio, portanto clique a elipse.
( ) boto para procurar por Visual Studio IDE O nome do arquivo executvel
devenv.exe, e se voc instalado para o local padro, seu caminho ser "
.NET\Common7\IDE\devenv.exe Visual Studio C:\Program Files\Microsoft. "

4.
5.

Clique OK para fechar a caixa de dilogo.


Clique com o boto direito do mouse o MarqueeControlLibrary projeto e
selecione Definir como Projeto iniciar para ativar essa configurao de
depurao " ".

Ponto de Verificao
Voc est pronto para depurar o comportamento em tempo de criao do seu
controle personalizado. Aps voc ter determinado se o ambiente de depurao
est configurada corretamente, voc testar a associao entre o controle
personalizado e o designer personalizado.
Para testar o ambiente de depurao e a associao de designer

Visual Studio

68

1.

Abrir o MarqueeControlRootDesigner arquivo de origem no e coloque um ponto de


interrupo na instruo WriteLine. o Code Editor

2.

Pressione F5 para iniciar a sesso de depurao. Observe que uma nova


instncia do Visual Studio criado.

3.

Na nova instncia do Visual Studio, abra a soluo " MarqueeControlTest ". A


soluo voc pode localizar facilmente selecionando Recent Projects no File
menu. O arquivo soluo " MarqueeControlTest.sln " ser listado como o
arquivo mais recentemente usado.

4.

Aberto no designer. o DemoMarqueeControl Observe que a instncia de


depurao do Visual Studio obtm foco e a execuo pra em seu ponto de
interrupo. Pressione F5 para continuar a sesso de depurao.

Neste ponto, tudo est no lugar para que voc possa desenvolver e depurar o
controle personalizado e seu designer personalizado associado. Se o restante dessa
explicao passo a passo ser concentrar nos detalhes da implementao recursos
do controle e o criador.
Implementar O controle personalizado
O MarqueeControl com um pouco de personalizao. um UserControl Ela expe
dois mtodos: Start, que inicia a animao Letreiro digital, e Stop, que interrompe a
animao. Porque e StopMarquee mtodos, respectivamente, em cada filho controlar
que implementa IMarqueeWidget. contm controles filho que implementa a
IMarqueeWidget interface, Start e Stop Enumerar cada controle filho e chamada ao
MarqueeControlStartMarquee

A aparncia do e MarqueeText controles dependente para o layout, ento


MarqueeControl substitui o OnLayout mtodo e chama PerformLayout em controles
filho desse tipo. o MarqueeBorder
Isso a extenso das personalizaes MarqueeControl. Os recursos de tempo de
execuo so implementadas pelo e MarqueeControlRootDesigner Classes. e MarqueeText
controles, e os recursos em tempo de criao so implementadas pelo MarqueeBorder
o MarqueeBorderDesigner
Para implementar o Controle Personalizado
1.

Abrir o MarqueeControl arquivo de origem no Code Editor. Implementar e Stop


Mtodos. o Start
C#
public void Start() { // The MarqueeControl may contain any number of // controls that
implement IMarqueeWidget, so // find each IMarqueeWidget child and call its // StartMarquee
method. foreach( Control cntrl in this.Controls ) { if( cntrl is IMarqueeWidget ) { IMarqueeWidget
widget = cntrl as IMarqueeWidget; widget.StartMarquee(); } } } public void Stop() { // The
MarqueeControl may contain any number of // controls that implement IMarqueeWidget, so find
// each IMarqueeWidget child and call its StopMarquee // method. foreach( Control cntrl in
this.Controls ) { if( cntrl is IMarqueeWidget ) { IMarqueeWidget widget = cntrl as
IMarqueeWidget; widget.StopMarquee(); } } }

2.

Substituir o OnLayout mtodo.


C#
protected override void OnLayout(LayoutEventArgs levent) { base.OnLayout (levent); // Repaint
all IMarqueeWidget children if the layout // has changed. foreach( Control cntrl in this.Controls ) {
if( cntrl is IMarqueeWidget ) { Control control = cntrl as Control; control.PerformLayout(); } } }

Visual Studio

69

Criando um controle filho para O controle personalizado


O MarqueeControl: o MarqueeBorder controle e o MarqueeText controle. hospedar dois
tipos de controle filho
MarqueeBorder esse controle pinta uma borda de " luz " ao redor suas bordas.

O memria flash luzes em seqncia, para que eles apaream para ser mover-se
a borda. A velocidade na qual o memria flash luzes controlada pela
propriedade chamado UpdatePeriod. Vrias outras propriedades personalizadas
determinar outros aspectos da aparncia do controle. Dois mtodos, chamado
StartMarquee e StopMarquee, controle quando a animao inicia e interrompe.

MarqueeText esse controle pinta uma seqncia flashing. Como o MarqueeBorder


controle, a velocidade na qual o texto pisca controlada pela propriedade
UpdatePeriod. O MarqueeText controle tem tambm e StopMarquee mtodos em
comum com o MarqueeBorder controle. o StartMarquee

Em tempo de criao, em qualquer combinao. permite esses tipos dois controle a


ser adicionado MarqueeControlRootDesigner uma MarqueeControl
Recursos comuns dos dois controles so factored em uma interface denominada
IMarqueeWidget. Isso permite para descobrir os controles filho relacionados
MARQUEE-e conceda a eles Tratamento especial. o MarqueeControl
Para implementar o recurso animao peridicos, voc ir usar BackgroundWorker
objetos de espao para nome System.ComponentModel. Voc pode usar Timer
objetos, mas quando vrios IMarqueeWidget objetos esto presentes, o segmento de
UI nico pode ser impossvel acompanhar a animao.
Para criar um controle filho para o controle personalizado
1.

Adicionar um novo item classe ao projeto MarqueeControlLibrary. Dar o


novo arquivo de origem uma nome de base de " IMarqueeWidget ".

2.

Abrir o IMarqueeWidget arquivo de origem no e alterar a declarao de class


para interface: o Code Editor
C#
// This interface defines the contract for any class that is to // be used in constructing a
MarqueeControl. public interface IMarqueeWidget {

3.

Adicione o seguinte cdigo para a IMarqueeWidget interface para expor dois


mtodos e uma propriedade que manipulam a animao Letreiro digital:
C#
// This interface defines the contract for any class that is to
// be used in constructing a MarqueeControl.
public interface IMarqueeWidget
{ // This method starts the animation. If the control can
// contain other classes that implement IMarqueeWidget as
// children, the control should call StartMarquee on all
// its IMarqueeWidget child controls.
void StartMarquee();
// This method stops the animation. If the control can
// contain other classes that implement IMarqueeWidget as
// children, the control should call StopMarquee on all
// its IMarqueeWidget child controls.

Visual Studio

70

void StopMarquee();
// This method specifies the refresh rate for the animation,
// in milliseconds.
int UpdatePeriod
{ get; set; } }

4.

Adicionar um novo UserControl item para o MarqueeControlLibrary


projeto. Dar o novo arquivo de origem uma nome de base de " MarqueeText
".

5.

Arraste um BackgroundWorker componente de at seu MarqueeText


controle. o Toolbox Esse componente permitir que o MarqueeText controle
para atualizar prprio assincronamente.

6.

Na janela Propriedades, defina as BackgroundWorker propriedades para


true e WorkerSupportsCancellation do componente
WorkerReportsProgess. Essas configuraes permitem que o
BackgroundWorker Componente para aumentar o ProgressChanged evento
periodicamente e para cancelar Atualizaes assncronas. Para obter mais
informaes, consulte Componente BackgroundWorker.

7.

Abrir o MarqueeText arquivo de origem no Code Editor. Na parte superior do


arquivo, importar os espaos para nome a seguir:
C#
using System; using System.ComponentModel; using System.ComponentModel.Design; using
System.Diagnostics; using System.Drawing; using System.Threading; using
System.Windows.Forms; using System.Windows.Forms.Design;

8.

Alterar da declarao do MarqueeText para herdar de Label e para implementar


a IMarqueeWidget interface:
C#
[ToolboxItemFilter("MarqueeControlLibrary.MarqueeText", ToolboxItemFilterType.Require)]
public class MarqueeText : Label, IMarqueeWidget {

9.

Declare as variveis que correspondem s propriedades expostos, instncia e


inicializar-los no construtor. O isLit campo determina se o texto est para ser
pintura com a cor determinado pela LightColor propriedade.
C#
// When isLit is true, the text is painted in the light color; // When isLit is false, the text is painted
in the dark color. // This value changes whenever the BackgroundWorker component // raises the
ProgressChanged event. private bool isLit = true; // These fields back the public properties. private
int updatePeriodValue = 50; private Color lightColorValue; private Color darkColorValue; // These
brushes are used to paint the light and dark // colors of the text. private Brush lightBrush; private
Brush darkBrush; // This component updates the control asynchronously. private
BackgroundWorker backgroundWorker1; public MarqueeText() { // This call is required by the
Windows.Forms Form Designer. InitializeComponent(); // Initialize light and dark colors // to the
control's default values. this.lightColorValue = this.ForeColor; this.darkColorValue =
this.BackColor; this.lightBrush = new SolidBrush(this.lightColorValue); this.darkBrush = new
SolidBrush(this.darkColorValue); }

10. Implementa a IMarqueeWidget interface.

Visual Studio

71

O StartMarquee e StopMarquee chamar mtodos do componente RunWorkerAsync


e BackgroundWorkerCancelAsync mtodos para iniciar e parar a animao.
O Category e Browsable atributos so aplicadas para a UpdatePeriod
propriedade para ele aparea em uma seo personalizado da janela
Propriedades chamada " digital ".
C#
public virtual void StartMarquee() { // Start the updating thread and pass it the UpdatePeriod.
this.backgroundWorker1.RunWorkerAsync(this.UpdatePeriod); } public virtual void
StopMarquee() { // Stop the updating thread. this.backgroundWorker1.CancelAsync(); }
[Category("Marquee")] [Browsable(true)] public int UpdatePeriod { get { return
this.updatePeriodValue; } set { if (value > 0) { this.updatePeriodValue = value; } else { throw new
ArgumentOutOfRangeException("UpdatePeriod", "must be > 0"); } } }

11. Implementar a assessores Propriedade. Voc ir expor duas propriedades


aos clientes: LightColor e DarkColor. O Category e Browsable atributos so
aplicados a essas propriedades, para as propriedades apaream em uma
seo personalizado da janela Propriedades chamada " digital ".
C#
[Category("Marquee")] [Browsable(true)] public Color LightColor { get { return
this.lightColorValue; } set { // The LightColor property is only changed if the // client provides a
different value. Comparing values // from the ToArgb method is the recommended test for //
equality between Color structs. if (this.lightColorValue.ToArgb() != value.ToArgb()) {
this.lightColorValue = value; this.lightBrush = new SolidBrush(value); } } } [Category("Marquee")]
[Browsable(true)] public Color DarkColor { get { return this.darkColorValue; } set { // The
DarkColor property is only changed if the // client provides a different value. Comparing values //
from the ToArgb method is the recommended test for // equality between Color structs. if
(this.darkColorValue.ToArgb() != value.ToArgb()) { this.darkColorValue = value; this.darkBrush =
new SolidBrush(value); } } }

12. Implementar os manipuladores para o BackgroundWorker componente na


DoWork e ProgressChanged eventos.
O DoWork manipulador de eventos sleeps para o nmero de milissegundos
especificado pelo UpdatePeriod raises depois o ProgressChanged evento, at
parar a animao ao chamar CancelAsync seu cdigo.
O ProgressChanged manipulador de eventos alterna o texto entre seu
estado para dar a aparncia de flashing claras e escuras.
C#
// This method is called in the worker thread's context, // so it must not make any calls into the
MarqueeText control. // Instead, it communicates to the control using the // ProgressChanged
event. // // The only work done in this event handler is // to sleep for the number of milliseconds
specified // by UpdatePeriod, then raise the ProgressChanged event. private void
backgroundWorker1_DoWork( object sender, System.ComponentModel.DoWorkEventArgs e) {
BackgroundWorker worker = sender as BackgroundWorker; // This event handler will run until
the client cancels // the background task by calling CancelAsync. while
(!worker.CancellationPending) { // The Argument property of the DoWorkEventArgs // object
holds the value of UpdatePeriod, which // was passed as the argument to the RunWorkerAsync //

Visual Studio

72

method. Thread.Sleep((int)e.Argument); // The DoWork eventhandler does not actually report //


progress; the ReportProgress event is used to // periodically alert the control to update its state.
worker.ReportProgress(0); } } // The ProgressChanged event is raised by the DoWork method. //
This event handler does work that is internal to the // control. In this case, the text is toggled
between its // light and dark state, and the control is told to // repaint itself. private void
backgroundWorker1_ProgressChanged(object sender,
System.ComponentModel.ProgressChangedEventArgs e) { this.isLit = !this.isLit; this.Refresh(); }

13. Substituir o OnPaint mtodo para ativar a animao.


C#
protected override void OnPaint(PaintEventArgs e) { // The text is painted in the light or dark
color, // depending on the current value of isLit. this.ForeColor = this.isLit ? this.lightColorValue :
this.darkColorValue; base.OnPaint(e); }

Criar o controle filho MarqueeBorder


O MarqueeBorder controle um pouco mais sofisticado que o MarqueeText controle. Ele
tem mais propriedades e a animao no mtodo OnPaint est mais envolvido. Em
princpio, ele bastante semelhante ao controle MarqueeBorder.
Porque o MarqueeBorder controle pode ter controles filho, ele precisar estar ciente
de Layout eventos.
Para criar o controle MarqueeBorder
1.

Adicionar um novo UserControl item para o MarqueeControlLibrary


projeto. Dar o novo arquivo de origem uma nome de base de "
MarqueeBorder ".

2.

Arraste um BackgroundWorker componente de at seu MarqueeBorder


controle. o Toolbox Esse componente permitir que o MarqueeBorder controle
para atualizar prprio assincronamente.

3.

Na janela Propriedades, defina as BackgroundWorker propriedades para


true e WorkerSupportsCancellation do componente
WorkerReportsProgess. Essas configuraes permitem que o
BackgroundWorker Componente para aumentar o ProgressChanged
evento periodicamente e para cancelar Atualizaes assncronas. Para obter
mais informaes, consulte Componente BackgroundWorker.

4.

Abrir o MarqueeBorder arquivo de origem no Code Editor. Na parte superior do


arquivo, importar os espaos para nome a seguir:
C#
using System; using System.ComponentModel; using System.ComponentModel.Design; using
System.Diagnostics; using System.Drawing; using System.Drawing.Design; using
System.Threading; using System.Windows.Forms; using System.Windows.Forms.Design;

5.

Alterar da declarao da MarqueeBorder Herdar do Panel e para implementar a

IMarqueeWidget interface.

C#
[Designer(typeof(MarqueeControlLibrary.Design.MarqueeBorderDesigner ))]
[ToolboxItemFilter("MarqueeControlLibrary.MarqueeBorder", ToolboxItemFilterType.Require)]
public class MarqueeBorder : Panel, IMarqueeWidget {

Visual Studio

73

6.

Declarar dois enumeraes de gerenciamento de estado do MarqueeBorder


controle: MarqueeSpinDirection, que determina a direo na qual as luzes " girar
" ao redor da borda, e MarqueeLightShape, que determina a forma das luzes
(quadrado ou circular). Coloque essas declaraes antes declarao da
MarqueeBorder classe.
C#
// This defines the possible values for the MarqueeBorder // control's SpinDirection property.
public enum MarqueeSpinDirection { CW, CCW } // This defines the possible values for the
MarqueeBorder // control's LightShape property. public enum MarqueeLightShape { Square,
Circle }

7.

Declare as variveis que correspondem s propriedades expostos, instncia e


inicializar-los no construtor.
C#
public static int MaxLightSize = 10; // These fields back the public properties. private int
updatePeriodValue = 50; private int lightSizeValue = 5; private int lightPeriodValue = 3; private
int lightSpacingValue = 1; private Color lightColorValue; private Color darkColorValue; private
MarqueeSpinDirection spinDirectionValue = MarqueeSpinDirection.CW; private
MarqueeLightShape lightShapeValue = MarqueeLightShape.Square; // These brushes are used to
paint the light and dark // colors of the marquee lights. private Brush lightBrush; private Brush
darkBrush; // This field tracks the progress of the "first" light as it // "travels" around the marquee
border. private int currentOffset = 0; // This component updates the control asynchronously.
private System.ComponentModel.BackgroundWorker backgroundWorker1; public
MarqueeBorder() { // This call is required by the Windows.Forms Form Designer.
InitializeComponent(); // Initialize light and dark colors // to the control's default values.
this.lightColorValue = this.ForeColor; this.darkColorValue = this.BackColor; this.lightBrush = new
SolidBrush(this.lightColorValue); this.darkBrush = new SolidBrush(this.darkColorValue); // The
MarqueeBorder control manages its own padding, // because it requires that any contained
controls do // not overlap any of the marquee lights. int pad = 2 * (this.lightSizeValue +
this.lightSpacingValue); this.Padding = new Padding(pad, pad, pad, pad);
SetStyle(ControlStyles.OptimizedDoubleBuffer, true); }

8.

Implementa a IMarqueeWidget interface.


O StartMarquee e StopMarquee chamar mtodos do componente
RunWorkerAsync e BackgroundWorkerCancelAsync mtodos para iniciar
e parar a animao.
Como o MarqueeBorder controle pode conter controles filho, o StartMarquee
mtodo enumera todos os controles filho e chama StartMarquee naqueles que
implementam IMarqueeWidget. O StopMarquee mtodo tem uma implementao
semelhante.
C#
public virtual void StartMarquee() { // The MarqueeBorder control may contain any number of //
controls that implement IMarqueeWidget, so find // each IMarqueeWidget child and call its
StartMarquee // method. foreach (Control cntrl in this.Controls) { if (cntrl is IMarqueeWidget) {
IMarqueeWidget widget = cntrl as IMarqueeWidget; widget.StartMarquee(); } } // Start the
updating thread and pass it the UpdatePeriod.
this.backgroundWorker1.RunWorkerAsync(this.UpdatePeriod); } public virtual void

Visual Studio

74

StopMarquee() { // The MarqueeBorder control may contain any number of // controls that
implement IMarqueeWidget, so find // each IMarqueeWidget child and call its StopMarquee //
method. foreach (Control cntrl in this.Controls) { if (cntrl is IMarqueeWidget) { IMarqueeWidget
widget = cntrl as IMarqueeWidget; widget.StopMarquee(); } } // Stop the updating thread.
this.backgroundWorker1.CancelAsync(); } [Category("Marquee")] [Browsable(true)] public virtual
int UpdatePeriod { get { return this.updatePeriodValue; } set { if (value > 0) {
this.updatePeriodValue = value; } else { throw new
ArgumentOutOfRangeException("UpdatePeriod", "must be > 0"); } } }

Implementar a assessores Propriedade. O MarqueeBorder controle tem vrias


propriedades para controlar sua aparncia.
C#
[Category("Marquee")] [Browsable(true)] public int LightSize { get { return this.lightSizeValue; }
set { if (value > 0 && value <= MaxLightSize) { this.lightSizeValue = value; this.DockPadding.All =
2 * value; } else { throw new ArgumentOutOfRangeException("LightSize", "must be > 0 and <
MaxLightSize"); } } } [Category("Marquee")] [Browsable(true)] public int LightPeriod { get {
return this.lightPeriodValue; } set { if (value > 0) { this.lightPeriodValue = value; } else { throw
new ArgumentOutOfRangeException("LightPeriod", "must be > 0 "); } } } [Category("Marquee")]
[Browsable(true)] public Color LightColor { get { return this.lightColorValue; } set { // The
LightColor property is only changed if the // client provides a different value. Comparing values //
from the ToArgb method is the recommended test for // equality between Color structs. if
(this.lightColorValue.ToArgb() != value.ToArgb()) { this.lightColorValue = value; this.lightBrush =
new SolidBrush(value); } } } [Category("Marquee")] [Browsable(true)] public Color DarkColor {
get { return this.darkColorValue; } set { // The DarkColor property is only changed if the // client
provides a different value. Comparing values // from the ToArgb method is the recommended test
for // equality between Color structs. if (this.darkColorValue.ToArgb() != value.ToArgb()) {
this.darkColorValue = value; this.darkBrush = new SolidBrush(value); } } } [Category("Marquee")]
[Browsable(true)] public int LightSpacing { get { return this.lightSpacingValue; } set { if (value >=
0) { this.lightSpacingValue = value; } else { throw new
ArgumentOutOfRangeException("LightSpacing", "must be >= 0"); } } } [Category("Marquee")]
[Browsable(true)] [EditorAttribute(typeof(LightShapeEditor),
typeof(System.Drawing.Design.UITypeEditor))] public MarqueeLightShape LightShape { get {
return this.lightShapeValue; } set { this.lightShapeValue = value; } } [Category("Marquee")]
[Browsable(true)] public MarqueeSpinDirection SpinDirection { get { return
this.spinDirectionValue; } set { this.spinDirectionValue = value; } }

9.

Implementar os manipuladores para o BackgroundWorker componente na


DoWork e ProgressChanged eventos.
O DoWork manipulador de eventos sleeps para o nmero de milissegundos
especificado pelo UpdatePeriod raises depois o ProgressChanged evento, at
parar a animao ao chamar CancelAsync seu cdigo.
O ProgressChanged manipulador de eventos aumenta a posio da luz "
base ", do qual o estado luz / escuro de outros luzes determinado, e chama
o Refresh mtodo para fazer com que o controle para redesenhar prprio.
C#

Visual Studio

75

// This method is called in the worker thread's context, // so it must not make any calls into the
MarqueeBorder // control. Instead, it communicates to the control using // the ProgressChanged
event. // // The only work done in this event handler is // to sleep for the number of milliseconds
specified // by UpdatePeriod, then raise the ProgressChanged event. private void
backgroundWorker1_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e) {
BackgroundWorker worker = sender as BackgroundWorker; // This event handler will run until
the client cancels // the background task by calling CancelAsync. while
(!worker.CancellationPending) { // The Argument property of the DoWorkEventArgs // object
holds the value of UpdatePeriod, which // was passed as the argument to the RunWorkerAsync //
method. Thread.Sleep((int)e.Argument); // The DoWork eventhandler does not actually report //
progress; the ReportProgress event is used to // periodically alert the control to update its state.
worker.ReportProgress(0); } } // The ProgressChanged event is raised by the DoWork method. //
This event handler does work that is internal to the // control. In this case, the currentOffset is
incremented, // and the control is told to repaint itself. private void
backgroundWorker1_ProgressChanged( object sender,
System.ComponentModel.ProgressChangedEventArgs e) { this.currentOffset++; this.Refresh(); }

10. Implementar os mtodos auxiliar, IsLit e DrawLight.


O IsLit mtodo determina a cor de uma luz em uma posio determinado.
Luzes que so " lit " so tiradas com a cor determinado por propriedade
LightColor, e aqueles que so " escuro " so tiradas com a cor determinado
pela DarkColor propriedade.
O DrawLight mtodo desenha uma luz utilizando a cor apropriada, Forma, e
posio.
C#
// This method determines if the marquee light at lightIndex // should be lit. The currentOffset
field specifies where // the "first" light is located, and the "position" of the // light given by
lightIndex is computed relative to this // offset. If this position modulo lightPeriodValue is zero, //
the light is considered to be on, and it will be painted // with the control's lightBrush. protected
virtual bool IsLit(int lightIndex) { int directionFactor = (this.spinDirectionValue ==
MarqueeSpinDirection.CW ? -1 : 1); return ( (lightIndex + directionFactor * this.currentOffset) %
this.lightPeriodValue == 0 ); } protected virtual void DrawLight( Graphics g, Brush brush, int
xPos, int yPos) { switch (this.lightShapeValue) { case MarqueeLightShape.Square: {
g.FillRectangle(brush, xPos, yPos, this.lightSizeValue, this.lightSizeValue); break; } case
MarqueeLightShape.Circle: { g.FillEllipse(brush, xPos, yPos, this.lightSizeValue,
this.lightSizeValue); break; } default: { Trace.Assert(false, "Unknown value for light shape.");
break; } } }

11. Substituir e OnPaint Mtodos. o OnLayout


O OnPaint mtodo desenha as luzes ao longo das bordas do controle
MarqueeBorder.
Como o OnPaint mtodo depender da dimenses do controle MarqueeBorder,
voc precisa para chamar ele sempre que for alterado o layout. Para isso,
substituir OnLayout e chame Refresh.
C#

Visual Studio

76

protected override void OnLayout(LayoutEventArgs levent) { base.OnLayout(levent); // Repaint


when the layout has changed. this.Refresh(); } // This method paints the lights around the border
of the // control. It paints the top row first, followed by the // right side, the bottom row, and the
left side. The color // of each light is determined by the IsLit method and // depends on the light's
position relative to the value // of currentOffset. protected override void OnPaint(PaintEventArgs
e) { Graphics g = e.Graphics; g.Clear(this.BackColor); base.OnPaint(e); // If the control is large
enough, draw some lights. if (this.Width > MaxLightSize && this.Height > MaxLightSize) { // The
position of the next light will be incremented // by this value, which is equal to the sum of the //
light size and the space between two lights. int increment = this.lightSizeValue +
this.lightSpacingValue; // Compute the number of lights to be drawn along the // horizontal edges
of the control. int horizontalLights = (this.Width - increment) / increment; // Compute the
number of lights to be drawn along the // vertical edges of the control. int verticalLights =
(this.Height - increment) / increment; // These local variables will be used to position and // paint
each light. int xPos = 0; int yPos = 0; int lightCounter = 0; Brush brush; // Draw the top row of
lights. for (int i = 0; i < horizontalLights; i++) { brush = IsLit(lightCounter) ? this.lightBrush :
this.darkBrush; DrawLight(g, brush, xPos, yPos); xPos += increment; lightCounter++; } // Draw
the lights flush with the right edge of the control. xPos = this.Width - this.lightSizeValue; // Draw
the right column of lights. for (int i = 0; i < verticalLights; i++) { brush = IsLit(lightCounter) ?
this.lightBrush : this.darkBrush; DrawLight(g, brush, xPos, yPos); yPos += increment;
lightCounter++; } // Draw the lights flush with the bottom edge of the control. yPos = this.Height this.lightSizeValue; // Draw the bottom row of lights. for (int i = 0; i < horizontalLights; i++) {
brush = IsLit(lightCounter) ? this.lightBrush : this.darkBrush; DrawLight(g, brush, xPos, yPos);
xPos -= increment; lightCounter++; } // Draw the lights flush with the left edge of the control.
xPos = 0; // Draw the left column of lights. for (int i = 0; i < verticalLights; i++) { brush =
IsLit(lightCounter) ? this.lightBrush : this.darkBrush; DrawLight(g, brush, xPos, yPos); yPos -=
increment; lightCounter++; } } }

Criando um designer personalizado para sombra e propriedades de filtro


A MarqueeControlRootDesigner classe fornece a implementao para o designer raiz.
Alm deste Designer, que opera em ser necessrio um designer personalizado que
est associado ao controle MarqueeBorder especificamente. o MarqueeControl Este
criador fornece personalizado comportamento que seja apropriado no contexto do
designer raiz personalizado.
Especificamente, o MarqueeBorderDesigner ser " sombra " e filtrar certas propriedades
sobre o MarqueeBorder Controle, alterar sua interao com o ambiente de design.
Interceptando chamadas para um componente na propriedade acessador
conhecido como " Sombreamento. " Ele permite que um designer para controlar o
valor definido pelo usurio e opcionalmente passar esse valor para o componente
est sendo criado.
Para esse exemplo, que impede o usurio de fazer o MarqueeBorder controle invisvel
ou desativado durante o tempo de design. e Enabled ser propriedades ser
sombreado pela Visible o MarqueeBorderDesigner
Os designers tambm pode adicionar e remover propriedades. Para esse exemplo,
a DockPadding propriedade ser removido em tempo de criao, porque o
MarqueeBorder controle programaticamente Define o enchimento com base no
tamanho das luzes especificado pela propriedade LightSize.

Visual Studio

77

A classe base de MarqueeBorderDesigner ComponentDesigner, que tem mtodos que


pode alterar os atributos, propriedades e eventos expostos por um controle em
tempo de criao:

PreFilterProperties

PostFilterProperties

PreFilterAttributes

PostFilterAttributes

PreFilterEvents

PostFilterEvents

Ao alterar a interface pblica de um componente usar esses mtodos, voc deve


seguir estas regras:

Adicionar ou remover itens no apenas os PreFilter mtodos

Modificar itens existentes em apenas os PostFilter mtodos

Sempre chamar o implementao bsica primeiro nos PreFilter mtodos

Sempre chamar o implementao bsica ltima nos PostFilter mtodos

Adhering com essas regras garante que todos os designers no ambiente Designtime tenham uma exibio consistente de todos os componentes que est sendo
criado.
A ComponentDesigner classe fornece um dicionrio para gerenciar os valores das
propriedades sombreado, que relieves voc da necessidade para criar variveis
instncia especfica.
Para criar um designer personalizado s propriedades de sombra e filtro
1.

Clique com o boto direito do mouse na Design pasta e adicionar uma nova
classe. Fornecer o arquivo de origem uma nome de base de "
MarqueeBorderDesigner ".

2.

Abrir o MarqueeBorderDesigner arquivo de origem no Code Editor. Na parte


superior do arquivo, importar os espaos para nome a seguir:
C#
using System; using System.Collections; using System.ComponentModel; using
System.ComponentModel.Design; using System.Diagnostics; using System.Windows.Forms; using
System.Windows.Forms.Design;

3.

Alterar da declarao do MarqueeBorderDesigner para herdar de


ParentControlDesigner, e delimite a definio para a MarqueeBorderDesigner
classe com espao para nome MarqueeControlLibrary.Design.
Como o MarqueeBorder controle pode conter controles filho, MarqueeBorderDesigner
herdado ParentControlDesigner, qual interao alas o pai-filho.
C#
namespace MarqueeControlLibrary.Design {
[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Deman
d, Name = "FullTrust")] public class MarqueeBorderDesigner : ParentControlDesigner {

4.

Substituir o implementao bsica de PreFilterProperties.


C#

Visual Studio

78

protected override void PreFilterProperties(IDictionary properties) {


base.PreFilterProperties(properties); if (properties.Contains("Padding")) {
properties.Remove("Padding"); } properties["Visible"] = TypeDescriptor.CreateProperty(
typeof(MarqueeBorderDesigner), (PropertyDescriptor)properties["Visible"], new Attribute[0]);
properties["Enabled"] = TypeDescriptor.CreateProperty( typeof(MarqueeBorderDesigner),
(PropertyDescriptor)properties["Enabled"], new Attribute[0]); }

5.

Implementar e Visible Propriedades. o Enabled Essas implementaes


sombra propriedades do controle.
C#
public bool Visible { get { return (bool)ShadowProperties["Visible"]; } set {
this.ShadowProperties["Visible"] = value; } } public bool Enabled { get { return
(bool)ShadowProperties["Enabled"]; } set { this.ShadowProperties["Enabled"] = value; } }

Tratamento alteraes componente


A MarqueeControlRootDesigner classe fornece a experincia Design-time personalizadas
para sua MarqueeControl instncias. A maior parte da funcionalidade Design-time
herdada da classe DocumentDesigner; seu cdigo ser implementar dois
personalizaes especficas: tratamento alteraes componente, e adicionar verbos
Designer.
Como usurios criar suas MarqueeControl instncias, o designer raiz acompanhar
alteraes e seus controles filho. o MarqueeControl O ambiente em tempo de design
oferece um servio conveniente, IComponentChangeService, para rastreamento
altera para estado componente.
Voc adquirir uma referncia a esse servio consultando o ambiente com o
GetService mtodo. Se a consulta for bem-sucedida, o designer pode anexar um
manipulador para o ComponentChanged evento e executar quaisquer tarefas so
necessrios para manter um estado consistente em tempo de criao.
Voc no caso da MarqueeControlRootDesigner classe, ir chamar o Refresh mtodo em
cada IMarqueeWidget objeto contido no MarqueeControl. Isso far com que o
IMarqueeWidget objeto para redesenhar prprio adequadamente quando propriedades
como seu pai Size so alteradas.
Para lidar com alteraes componente
1.

Abrir o MarqueeControlRootDesigner arquivo de origem no e substituem o


Initialize Mtodo. o Code Editor Chamar o implementao bsica de
Initialize e para consultar o IComponentChangeService.
C#
base.Initialize(component); IComponentChangeService cs =
GetService(typeof(IComponentChangeService)) as IComponentChangeService; if (cs != null) {
cs.ComponentChanged += new ComponentChangedEventHandler(OnComponentChanged); }

2.

Implementar o OnComponentChanged manipulador de eventos. Testar tipo


do componente de envio, e se ele for. chamar o Refresh mtodo an
IMarqueeWidget,
C#
private void OnComponentChanged( object sender, ComponentChangedEventArgs e) { if
(e.Component is IMarqueeWidget) { this.Control.Refresh(); } }

Visual Studio

79

Adicionando verbos criador ao seu designer personalizado


Um verbo Designer um comando de menu vinculado a um manipulador de
eventos. Verbos Designer so adicionadas ao menu de atalho um componente em
tempo de criao. Para obter mais informaes, consulte DesignerVerb.
Voc adicionar dois verbos Designer a seu designers: Run Test e Stop Test.
Esses verbos permitir que voc para exibir o comportamento em tempo de
execuo do em tempo de criao. o MarqueeControl Esses verbos ser adicionado ao
MarqueeControlRootDesigner.
O manipulador de eventos verbo quando Run Test chamado, ir chamar o
StartMarquee mtodo no MarqueeControl. O manipulador de eventos verbo quando Stop
Test chamado, ir chamar o StopMarquee mtodo no MarqueeControl. A
implementao do e StopMarquee mtodos chamar esses mtodos em controles que
implementam IMarqueeWidget, contidos para os controles contidos IMarqueeWidget
tambm participar do teste. o StartMarquee
Para adicionar verbos designer ao seu designers personalizados
1.

Na MarqueeControlRootDesigner Classe, adicione manipuladores de evento


chamado OnVerbRunTest e OnVerbStopTest.
C#
private void OnVerbRunTest(object sender, EventArgs e) { MarqueeControl c = this.Control as
MarqueeControl; c.Start(); } private void OnVerbStopTest(object sender, EventArgs e) {
MarqueeControl c = this.Control as MarqueeControl; c.Stop(); }

2.

Se conectar esses manipuladores de eventos a seus verbos Designer


correspondente. Herda MarqueeControlRootDesigner da sua classe base. um
DesignerVerbCollection Voc ir criar dois objetos novos DesignerVerb e
adicion-los a essa coleo no mtodo Initialize.
C#
this.Verbs.Add( new DesignerVerb("Run Test", new EventHandler(OnVerbRunTest)) );
this.Verbs.Add( new DesignerVerb("Stop Test", new EventHandler(OnVerbStopTest)) );

Criando um UITypeEditor personalizada


Quando voc criar uma experincia Design-time personalizados para usurios,
geralmente desejvel para criar uma interao com a janela Propriedades
Personalizadas. Voc pode fazer isso criando um UITypeEditor. Para obter mais
informaes, consulte Como criar um editor tipo UI:.
O MarqueeBorder controle expe vrias propriedades na janela Propriedades. Duas
dessas propriedades, MarqueeSpinDirection e MarqueeLightShape so representadas por
enumeraes. Para ilustrar o uso de um editor tipo UI, a MarqueeLightShape
propriedade ter uma classe Associado UITypeEditor.
Para criar um tipo personalizado UI Editor
1.
2.

Abrir o MarqueeBorder arquivo de origem no Code Editor.


Na definio da classe MarqueeBorder, declare uma classe denominada
LightShapeEditor que deriva de UITypeEditor.
C#
// This class demonstrates the use of a custom UITypeEditor. // It allows the MarqueeBorder
control's LightShape property // to be changed at design time using a customized UI element //

Visual Studio

80

that is invoked by the Properties window. The UI is provided // by the LightShapeSelectionControl


class. internal class LightShapeEditor : UITypeEditor {

3.

Declarar uma IWindowsFormsEditorService varivel chamada editorService


instncia.
C#
private IWindowsFormsEditorService editorService = null;

4.

Substituir o GetEditStyle mtodo. Essa implementao retorna DropDown,


que informa o ambiente de design como sero exibidas a LightShapeEditor.
C#
public override UITypeEditorEditStyle GetEditStyle(
System.ComponentModel.ITypeDescriptorContext context) { return
UITypeEditorEditStyle.DropDown; }

5.

Substituir o EditValue mtodo. Essa implementao consulta o ambiente de


design para um IWindowsFormsEditorService objeto. Se tiver xito, ele
criar um LightShapeSelectionControl. O DropDownControl mtodo chamado
para iniciar o LightShapeEditor. O valor de retorno desta chamada retornado
para o ambiente de design.
C#
public override object EditValue( ITypeDescriptorContext context, IServiceProvider provider,
object value) { if (provider != null) { editorService = provider.GetService(
typeof(IWindowsFormsEditorService)) as IWindowsFormsEditorService; } if (editorService !=
null) { LightShapeSelectionControl selectionControl = new LightShapeSelectionControl(
(MarqueeLightShape)value, editorService); editorService.DropDownControl(selectionControl);
value = selectionControl.LightShape; } return value; }

Criando um controle de exibio para seu UITypeEditor personalizada


1.

A MarqueeLightShape propriedade oferece suporte dois tipos de formas luz:


Square e Circle. Voc criar um controle personalizado usado somente para o
propsito de graficamente exibindo esses valores na janela Propriedades. Este
controle personalizado ser usado pelo para interagir com a janela
Propriedades. seu UITypeEditor

Para criar um controle de exibio para seu UI personalizado Editor tipo


1.

Adicionar um novo UserControl item para o MarqueeControlLibrary


projeto. Dar o novo arquivo de origem uma nome de base de "
LightShapeSelectionControl ".

2.

Arraste dois Panel controles da Toolbox. at a LightShapeSelectionControl


Nome-los squarePanel e circlePanel. Organiz-los lado a lado. Definir a Size
propriedade de ambos os Panel controles para (60, 60). Defina a Location
propriedade do controle squarePanel para (8, 10). Defina a Location
propriedade do controle circlePanel para (80, 10). Finalmente, defina a Size
propriedade do (150, 80). para o LightShapeSelectionControl

3.
4.

Abrir o LightShapeSelectionControl arquivo de origem no Code Editor.


Implementar Click manipuladores de eventos para e circlePanel controles. o
squarePanel Esses mtodos chamar CloseDropDown para encerrar a sesso de
edio personalizada UITypeEditor.

Visual Studio

81

C#
private void squarePanel_Click(object sender, EventArgs e) { this.lightShapeValue =
MarqueeLightShape.Square; this.Invalidate( false ); this.editorService.CloseDropDown(); } private
void circlePanel_Click(object sender, EventArgs e) { this.lightShapeValue =
MarqueeLightShape.Circle; this.Invalidate( false ); this.editorService.CloseDropDown(); }

5.

Declarar uma MarqueeLightShape varivel chamada lightShapeValue instncia.


C#
private MarqueeLightShape lightShapeValue = MarqueeLightShape.Square;

6.

No Construtor LightShapeSelectionControl, anexar os Click manipuladores de


eventos para e circlePanel eventos controles ' Click. o squarePanel Alm disso,
atribuir o MarqueeLightShape Valor do ambiente de design para o lightShapeValue
campo.
C#
// This constructor takes a MarqueeLightShape value from the // design-time environment, which
will be used to display // the initial state. public LightShapeSelectionControl( MarqueeLightShape
lightShape, IWindowsFormsEditorService editorService ) { // This call is required by the designer.
InitializeComponent(); // Cache the light shape value provided by the // design-time environment.
this.lightShapeValue = lightShape; // Cache the reference to the editor service. this.editorService =
editorService; // Handle the Click event for the two panels. this.squarePanel.Click += new
EventHandler(squarePanel_Click); this.circlePanel.Click += new
EventHandler(circlePanel_Click); }

7.

No mtodo Dispose, desanexar os Click manipuladores de eventos.


C#
protected override void Dispose( bool disposing ) { if( disposing ) { // Be sure to unhook event
handlers // to prevent "lapsed listener" leaks. this.squarePanel.Click -= new
EventHandler(squarePanel_Click); this.circlePanel.Click -= new
EventHandler(circlePanel_Click); if(components != null) { components.Dispose(); } }
base.Dispose( disposing ); }

8.

Implementar a LightShape propriedade.


C#
// LightShape is the property for which this control provides // a custom user interface in the
Properties window. public MarqueeLightShape LightShape { get { return this.lightShapeValue; }
set { if( this.lightShapeValue != value ) { this.lightShapeValue = value; } } }

9.

Substituir o OnPaint mtodo. Essa implementao ser desenhar um


quadrado slido e crculo. Ele tambm realar o valor selecionado
desenhando uma borda ao redor de uma forma ou o outro.
C#
protected override void OnPaint(PaintEventArgs e) { base.OnPaint (e); using( Graphics gSquare =
this.squarePanel.CreateGraphics(), gCircle = this.circlePanel.CreateGraphics() ) { // Draw a filled
square in the client area of // the squarePanel control. gSquare.FillRectangle( Brushes.Red, 0, 0,
this.squarePanel.Width, this.squarePanel.Height ); // If the Square option has been selected, draw
a // border inside the squarePanel. if( this.lightShapeValue == MarqueeLightShape.Square ) {

Visual Studio

82

gSquare.DrawRectangle( Pens.Black, 0, 0, this.squarePanel.Width-1, this.squarePanel.Height-1); }


// Draw a filled circle in the client area of // the circlePanel control. gCircle.Clear(
this.circlePanel.BackColor ); gCircle.FillEllipse( Brushes.Blue, 0, 0, this.circlePanel.Width,
this.circlePanel.Height ); // If the Circle option has been selected, draw a // border inside the
circlePanel. if( this.lightShapeValue == MarqueeLightShape.Circle ) { gCircle.DrawRectangle(
Pens.Black, 0, 0, this.circlePanel.Width-1, this.circlePanel.Height-1); } } }

Testando o controle personalizado no criador


Neste ponto, voc pode criar o MarqueeControlLibrary projeto. Voc pode criar
um controle que herda da classe MarqueeControl e utiliz-la em um formulrio.
Para criar uma implementao MarqueeControl personalizado
1.

Aberto DemoMarqueeControl no modo de design. Isso ir criar uma instncia do


tipo DemoMarqueeControl e exibi-lo em uma instncia do tipo
MarqueeControlRootDesigner.

2.

Na Toolbox, abrir a MarqueeControlLibrary Components guia. Voc ver


e MarqueeText Controles disponveis para seleo. o MarqueeBorder

3.

Arraste uma instncia do controle MarqueeBorder para a DemoMarqueeControl


superfcie de design. Ancorar esse MarqueeBorder controle para o controle pai.

4.

Arraste uma instncia do controle MarqueeText para a DemoMarqueeControl


superfcie de design.

5.
6.

7.

Compilar uma soluo.


Selecione e clique em seu glifo Marca Inteligente. o DemoMarqueeControl
Selecione a Run Test opo para iniciar a animao. Clique Stop Test para
parar a animao.
Aberto Form1 no modo estrutura.

8.

Colocar dois Button controles no formulrio. Nome-los startButton e stopButton.


e alterar os Text valores de propriedade para " Iniciar " e " parar ",
respectivamente

9.

Implementar Click manipuladores de eventos para ambos os Button


controles.

10. Na Toolbox, abrir a MarqueeControlTest Components guia. Voc ver


disponveis para seleo. o DemoMarqueeControl
11. Arraste uma instncia de DemoMarqueeControl at a Form1 superfcie de
design.
12. Nos Click manipuladores de eventos, chamar a Start. e Stop mtodos na
DemoMarqueeControl

Visual Basic
Private Sub startButton_Click(sender As Object, e As System.EventArgs)
Me.demoMarqueeControl1.Start() End Sub 'startButton_Click Private Sub
stopButton_Click(sender As Object, e As System.EventArgs) Me.demoMarqueeControl1.Stop()
End Sub 'stopButton_Click private void startButton_Click(object sender, System.EventArgs e) {
this.demoMarqueeControl1.Start(); } private void stopButton_Click(object sender,
System.EventArgs e) { this.demoMarqueeControl1.Stop(); }

13. Definir o MarqueeControlTest projeto como o projeto de inicializao e


execut-lo. Voc ver o formulrio exibindo seu DemoMarqueeControl. Clique no

Visual Studio

83

boto Iniciar para iniciar a animao. Voc ver o texto piscando e as luzes
mover-se a borda.
Prximas etapas
O MarqueeControlLibrary demonstra uma implementao de controles
personalizados e designers associado simples. Voc pode fazer esse exemplo mais
sofisticados de vrias maneiras:

Alterar os valores de propriedade no criador. o DemoMarqueeControl Adicionar


mais MarqueBorder controles e ancorado-los em suas instncias pai para criar um
efeito aninhadas. Faa suas experincias com configuraes diferentes para as
UpdatePeriod propriedades relacionadas luz-e o.

Criar suas prprias implementaes de IMarqueeWidget. Por exemplo, voc


pode, criar " Um sinal non flashing " ou um sinal animado com vrias imagens.

Personalizar a experincia Design-time. Voc pode tentar sombreamento


mais propriedades que Enabled e Visible. e voc pode adicionar novas
propriedades Adicionar novos verbos Designer para simplificar tarefas comuns
como encaixe controles filho.

A MarqueeControl Licena. Para obter mais informaes, consulte Como:


Licenciar componentes e controles.

Controlar como os controles so serializados e como cdigo for gerado para


eles. Para obter mais informaes, consulte Gerao e compilao de cdigo
fonte dinmico .

Um controle composto com Visual C# Walkthrough: criao


Controles Composite fornecem um meio pelo qual personalizado interfaces grfica
podem ser criadas e reutilizado. Um controle composto essencialmente um
componente com uma representao visual. Como tal, ele pode consistir de um ou
mais Windows Forms controles, componentes, ou blocos de cdigo que pode
estender funcionalidade, validar a entrada do usurio, modificar propriedades de
vdeo, ou executar outras tarefas necessrias para o autor. Composio em
controles podem ser colocados no Windows Forms em da mesma maneira que
outros controles. Na primeira parte dessa explicao passo a passo, voc criar um
controle composto simples chamado ctlClock. Na segunda parte da explicao passo
a passo, voc estender a funcionalidade de ctlClock atravs de herana.
Observao
As caixas de dilogo e comandos de menu que voc v podem ser diferentes das descritas em Help
(Ajuda) dependendo das configuraes ativas ou edio. Para alterar as configuraes, escolha Import
and Export Settings No menu Tools. Para obter mais informaes, consulte Configuraes do Visual
Studio.
Criando o projeto
Quando voc cria um novo projeto, voc especificar seu nome para definir o raiz,
nome conjunto, e nome do projeto, e garantir que o componente padro ser no
espao para nome correto.
Para criar a biblioteca controle ctlClockLib e o controle ctlClock
1.

No menu File, aponte para New, e clique Project para abrir a New Project
caixa de dilogo.

Visual Studio

84

2.

A partir da lista de Visual C# projetos, selecione o Windows Control


Library modelo de projeto, digite ctlClockLib na caixa Name, e, em seguida
clique em OK
O projeto nome, ctlClockLib, tambm atribuda para a raiz por padro. A raiz
usado para qualificar os nomes dos componentes no conjunto. Por exemplo,
se dois conjuntos de mdulos (assemblies) fornecer componentes nomeado
ctlClock, voc pode especificar seu ctlClock componente usando ctlClockLib.ctlClock.

3.

No Solution Explorer, clique com o boto direito do mouse UserControl1.cs


e clique em Rename.Alterar o nome do arquivo para ctlClock.cs. Clique no
Yes boto quando lhe for perguntado se voc desejar renomear todas as
referncias para o elemento de cdigo " UserControl1 ".
Observao
Por padro, um controle composto herda da classe UserControl fornecida pelo sistema. A UserControl
classe fornece funcionalidade exigido pelo composto todos os controles, e implementa os mtodos padro
e as propriedades.

4.

No menu File, clique Save All para salvar o projeto.

Adicionando Windows controles e componentes para o controle composto


Uma interface visual uma parte essencial de seu controle composto. Esta
interface visual implementado pela adio de um ou mais controles do Windows
para a superfcie de designer. Na demonstrao a seguir, voc ir incorporar
Windows controles em seu controle composto e escrever cdigo para implementar
funcionalidade.
Para adicionar um rtulo e um timer a seu controle composto
1.
2.

No Solution Explorer, clique com o boto direito do mouse ctlClock.cs e


clique em View Designer.
Em expanda o Common Controls n, e clique duas vezes Label. o Toolbox
Um Label controle denominado label1 adicionado a seu controle na superfcie
de designer.

3.

4.

No designer, clique em label1. Na janela Propriedades, defina as


propriedades a seguir.
Propriedade

Alterar para

Name

lblDisplay

Text

(espao em branco)

TextAlign

MiddleCenter

Font.Size

14

Em expanda o Components n, e clique duas vezes Timer. o Toolbox


Porque ele tem sem representao visual em tempo de execuo. um
componente, um Timer Portanto, ele no exibido com os controles na
superfcie Designer, mas sim em (uma bandeja na parte inferior da superfcie
designer). o Component Designer

5.

Na Component Designer, clique timer1, e defina a Interval propriedade


1000 e a Enabled propriedade true.

Visual Studio

85

A Interval propriedade controla a freqncia com a qual o Timer


Componente Ticks. Cada ticks tempo timer1, ele executa o cdigo no evento
timer1_Tick. O intervalo representa o nmero de milissegundos entre tiques.
6.

Na Component Designer, clique duas vezes timer1 Para ir para o


timer1_Tick evento para ctlClock.

7.

Modificar o cdigo para que ele parecido com o exemplo de cdigo a seguir.
Certifique-se de alterar o modificador de private acesso para protected.
[C#]
protected void timer1_Tick(object sender, System.EventArgs e) { // Causes the label to display the
current time. lblDisplay.Text = DateTime.Now.ToLongTimeString(); }

Este cdigo far com que a hora atual a ser mostrado no lblDisplay. Porque o
intervalo de timer1 estava definido para 1000, esse evento ocorrer cada
milissegundos de milhar, assim atualizando o horrio atual a cada segundo.
8.

Modificar o mtodo para ser assessor pela palavra-chave virtual. Para obter
mais informaes, consulte a seo " Inheriting de um controle Usurio "
abaixo.
protected virtual void timer1_Tick(object sender, System.EventArgs e)

9.

No menu File, clique Save All para salvar o projeto.

Adicionar propriedades ao controle composto


O controle relgio agora encapsula um Label controle e um Timer componente,
cada um com seu prprio conjunto de propriedades herdadas. Enquanto a
propriedades individuais desses controles no ir ser acessveis aos usurios
subseqentes do seu controle, voc pode criar e Expor propriedades personalizadas
Escrevendo os blocos de cdigo apropriada. No procedimento a seguir, voc
adicionar as propriedades para o controle que permitem ao usurio para alterar a
cor do plano de fundo e texto.
Para adicionar uma propriedade para o controle composto
1.

No Solution Explorer, clique com o boto direito do mouse ctlClock.cs e


clique em View Code.
O Code Editor para o controle abre.

2.

Localize a public partial class ctlClock instruo. Sob o Brace abertura ({)., digite o
seguinte cdigo
[C#]
private Color colFColor; private Color colBColor;

Essas instrues criar as variveis particulares que voc vai usar para
armazenar os valores para as propriedades voc est prestes a criar.
3.

Digite o seguinte cdigo abaixo as declaraes de varivel da etapa 2.


[C#]
// Declares the name and type of the property. public Color ClockBackColor { // Retrieves the
value of the private variable colBColor. get { return colBColor; } // Stores the selected value in the
private variable colBColor, and // updates the background color of the label control lblDisplay. set
{ colBColor = value; lblDisplay.BackColor = colBColor; } } // Provides a similar set of instructions
for the foreground color. public Color ClockForeColor { get { return colFColor; } set { colFColor =
value; lblDisplay.ForeColor = colFColor; } }

Visual Studio

86

O cdigo antecedente torna duas propriedades personalizadas, ClockForeColor e


ClockBackColor, Usurios disponveis para subseqentes deste controle. O get e
set fornecer instrues para armazenamento e recuperao de valor da
propriedade,, bem como cdigo para implementar funcionalidade apropriado
para a propriedade.
4.

No menu File, clique Save All para salvar o projeto.

Teste o controle
Controles so aplicativos no autnoma; eles deve ser hospedado em um
continer. Testar comportamento em tempo de execuo do seu controle e exercer
suas propriedades com o UserControl Test Container. Para obter mais
informaes, consulte HOW TO: testar o comportamento de um UserControl RunTime.
Para testar o controle
1.

Pressione F5 para criar o projeto e executar o controle no UserControl Test


Container.

2.

Na grade, o Continer de Teste na propriedade a ClockBackColor propriedade,


localize e selecione a propriedade para exibir a paleta de cores.

3.

Escolha uma cor para selecion-lo.


A cor plano de fundo de seu controle alterada para a cor selecionada.

4.

Use uma seqncia de eventos semelhante para verificar se a ClockForeColor


propriedade est funcionando como esperado.
Nesta seo e as sees anteriores, voc j viu como componentes e
Windows controles podem ser combinados com cdigo e embalagem para
fornecer funcionalidade na forma de um controle de composio
personalizado. Voc aprendeu para expor as propriedades em seu controle
composto, e como testar o controle depois que ele for concluda. Na prxima
seo voc aprender como construir um controle composto herdadas usando
ctlClock como base.

Herdar a partir de um controle composto


Nas sees anteriores, voc aprendeu como combinar Windows controles,
componentes, e cdigo em reutilizveis controles composto. O controle composto
agora pode ser usado como uma base no qual outros controles pode ser construdo.
O processo de derivar uma classe de uma classe base chamado Herana. No
nesta seo, voc criar um controle denominado ctlAlarmClock composto. Ser esse
controle ser derivadas de seu controle pai, ctlClock. Voc aprender a estender a
funcionalidade de ctlClock, substituindo mtodos pai e adicionando novos mtodos e
propriedades.
A primeira etapa para criar um controle herdado para derivar-lo de seu pai. Esta
ao cria um novo controle que possui todas as propriedades, mtodos, e grfica
caractersticas do controle pai, mas tambm pode atuar como uma base para a
adio de novo ou modificado funcionalidade.
Para criar o controle herdado
1.

No Solution Explorer, clique com o boto direito do mouse ctlClockLib,


aponte para Add, e clique em User Control
A Add New Item caixa de dilogo aberta.

2.

Selecione o Inherited User Control modelo.

Visual Studio

87

3.

Na caixa Name, digite ctlAlarmClock.cs, e clique em Add.


A Inheritance Picker caixa de dilogo ser exibida.

4.

Em Component Name, clique duas vezes ctlClock.

5.

No Solution Explorer, pesquise os projetos atual.


Observao
Um arquivo chamado ctlAlarmClock.cs tiver sido adicionado ao projeto atual.

Adicionando as propriedades alarme


Propriedades so adicionadas a um controle herdadas da mesma maneira
adicionados a um controle composto. Voc agora usar a sintaxe declarao da
propriedade para adicionar duas propriedades ao seu controle: AlarmTime, que ser
armazenar o valor da data e hora o alarme para ir desativado, e AlarmSet, que
indicar se o alarme est definido..
Para adicionar propriedades a seu controle composto
1.

No Solution Explorer, clique com o boto direito do mouse ctlAlarmClock e


clique em View Code.

2.

Localize a public class instruo. Observe que o controle herdado


ctlClockLib.ctlClock. Sob o Brace abertura digite o seguinte cdigo. ({) instruo,
[C#]
private DateTime dteAlarmTime; private bool blnAlarmSet; // These properties will be declared as
public to allow future // developers to access them. public DateTime AlarmTime { get { return
dteAlarmTime; } set { dteAlarmTime = value; } } public bool AlarmSet { get { return blnAlarmSet;
} set { blnAlarmSet = value; } }

Adicionando a interface grfica do controle


O controle herdado tem uma interface visual que idntica ao controle ela herda
da. Ele possui os mesmos controles constituintes como seu controle pai, mas no
as propriedades dos controles constituintes estar disponvel a menos que eles
foram especificamente expostos. Voc pode adicionar para a interface grfica de
um controle composto herdadas da mesma maneira ao deseja incluir em qualquer
controle composto. Para continuar adicionando ao alarme o relgio na interface
visual, voc adicionar um controle rtulo que ser memria flash quando o alarme
sounding.
Para adicionar o controle rtulo
1.

No Solution Explorer, clique com o boto direito do mouse ctlAlarmClock e


clique em View Designer.
O designer para ctlAlarmClock abre na janela principal.

2.

Clique na parte de exibio do controle, e exibir a janela Propriedades.


Observao
Enquanto todas as propriedades so exibida, eles so esmaecidos. Isso indica que essas propriedades so
nativo para lblDisplay e no pode ser modificado ou acessado na janela Propriedades. Por padro,
controles contido em um controle composto so private, e suas propriedades no esto acessveis por
qualquer meio.
Observao
Se voc quiser que os subseqentes usurios de seu controle composto para ter acesso a seus controles

Visual Studio

88

interno, declare-los como public ou protected.. ou protected Isso permitir que voc possa definir e
modificar propriedades de controles contido em seu controle composto usando o cdigo apropriado.
3.
4.

Adicionar um Label controle para o controle composto.


Usando o mouse, arraste o Label controle imediatamente abaixo da caixa
Exibir. Na janela Propriedades, defina as propriedades a seguir.
Propriedade

Configurao

Name

lblAlarm

Text

Alarme!

TextAlign

MiddleCenter

Visible

false

Adicionar a funcionalidade alarme


Nos procedimentos anteriores, voc adicionar propriedades e um controle que
permitir funcionalidade alarme no seu controle composto. Neste procedimento,
voc ser adicione cdigo para comparar a hora atual para a hora alarme e, se eles
so os mesmos, para memria flash um alarme. Voc, substituindo o timer1_Tick
mtodo do ctlClock e adicionando cdigo adicional a ela, se estender a capacidade
de ctlAlarmClock Mantendo todos os inerente a funcionalidade do ctlClock.
Para substituir o mtodo timer1_Tick do ctlClock
1.

Em Localizar a private bool blnAlarmSet; Instruo. o Code Editor


Imediatamente abaixo dele, adicione a instruo a seguir.
[C#]
private bool blnColorTicker;

2.

Em (}). localizar o chave de fechamento no final da classe o Code Editor


Imediatamente antes do Brace, adicione o seguinte cdigo.
[C#]
protected override void timer1_Tick(object sender, System.EventArgs e) { // Calls the
Timer1_Tick method of ctlClock. base.timer1_Tick(sender, e); // Checks to see if the alarm is set.
if (AlarmSet == false) return; else // If the date, hour, and minute of the alarm time are the same
as // the current time, flash an alarm. { if (AlarmTime.Date == DateTime.Now.Date &&
AlarmTime.Hour == DateTime.Now.Hour && AlarmTime.Minute == DateTime.Now.Minute) { //
Sets lblAlarmVisible to true, and changes the background color based on // the value of
blnColorTicker. The background color of the label // will flash once per tick of the clock.
lblAlarm.Visible = true; if (blnColorTicker == false) { lblAlarm.BackColor = Color.Red;
blnColorTicker = true; } else { lblAlarm.BackColor = Color.Blue; blnColorTicker = false; } } else {
// Once the alarm has sounded for a minute, the label is made // invisible again. lblAlarm.Visible
= false; } } }

A adio deste cdigo realiza diversas tarefas. A override instruo devolve o


controle para usar esse mtodo em vez do mtodo que foi herdada do
controle base. Quando esse mtodo for chamado, ele chama o mtodo
substitui invocando a base.timer1_Tick instruo, garantindo que todos os a
funcionalidade incorporada ao controle original reproduzida neste controle.
Em seguida, ele executa cdigo adicional para incorporar a funcionalidade
alarme. Um controle rtulo flashing ser exibido quando o alarme ocorre.

Visual Studio

89

O controle relgio alarme est quase completo. A nica coisa que permanece
deve implementar uma maneira para desativ-lo. Para fazer isso, voc
adicionar cdigo para o lblAlarm_Click mtodo.
Para implementar o mtodo shutoff
1.

No Solution Explorer, clique com o boto direito do mouse ctlAlarmClock.cs


e clique em View Designer.
O designer abre.

2.

3.

Adicionar um boto para o controle. Defina as propriedades do boto da


seguinte maneira.
Propriedade

Value (Valor)

Name

btnAlarmOff

Text

Desativar alarme

No designer, clique duas vezes btnAlarmOff.


A Code Editor abre para a private void btnAlarmOff_Click linha.

4.

Modificar esse mtodo para que ele parecido com o cdigo a seguir.
[C#]
private void btnAlarmOff_Click(object sender, System.EventArgs e) { // Turns off the alarm.
AlarmSet = false; // Hides the flashing label. lblAlarm.Visible = false; }

5.

No menu File, clique Save All para salvar o projeto.

Usar o controle Inherited em um formulrio


Voc pode testar o controle herdadas da mesma maneira voc testou o controle
classe base, ctlClock:. Pressione F5 para criar o projeto e executar o controle no
UserControl Test Container Para obter mais informaes, consulte HOW TO:
testar o comportamento de um UserControl Run-Time.
Para colocar o controle a ser usado, ser necessrio para hospedar-lo em um
formulrio. Como com um controle composto padro, um controle composto
herdadas no pode autnoma sozinho e deve ser hospedado em um formulrio ou
outros continer. Since ctlAlarmClock tem uma maior intensidade de funcionalidade,
cdigo adicional necessrio para test-lo. Neste procedimento, voc ir escrever
um programa simples para testar a funcionalidade do ctlAlarmClock. Voc ir gravar
cdigo para definir e exibir a AlarmTime propriedade de ctlAlarmClock, e ser testar
suas funes inerente.
Para criar e adicionar o controle a um formulrio de teste
1.

No Solution Explorer, clique com o boto direito do mouse ctlClockLib e


clique em Build.

2.

Adicione um novo Windows Application projeto para a soluo, e


denomine-Test.

3.

Clique com boto direito no Solution Explorer, mouse no References n


para o projeto de teste. Clique Add Reference para exibir a Add Reference
caixa de dilogo. Clique na guia rotuladas Projects. O ctlClockLib projeto ser
listado em Project Name. Clique duas vezes o projeto para adicionar a
referncia para o projeto de teste.

Visual Studio

90

4.
5.

No Solution Explorer, clique com o boto direito do mouse Test e clique em


Build.
Em expanda o ctlClockLib Components N. o Toolbox

6.

Clique duas vezes ctlAlarmClock para adicionar uma cpia do ctlAlarmClock


ao seu formulrio.

7.

Em Localizar e clique duas vezes DateTimePicker Para adicionar um


DateTimePicker controle ao seu formulrio, e adicione um Label controle
clicando duas vezes Label. o Toolbox

8.

Usar o mouse para posicionar os controles em um local conveniente no


formulrio.

9.

Definir as propriedades desses controles da seguinte maneira.


Controle

Propriedade

Value (Valor)

label1

Text

(espao em branco)

Name

lblTest

Name

dtpTest

Format

Time

dateTimePicker1

10. No designer, clique duas vezes dtpTest.


A Code Editor abre para private void dtpTest_ValueChanged.
11. Modificar o cdigo para que ele parecido com o seguinte.
[C#]
private void dtpTest_ValueChanged(object sender, System.EventArgs e) {
ctlAlarmClock1.AlarmTime = dtpTest.Value; ctlAlarmClock1.AlarmSet = true; lblTest.Text =
"Alarm Time is " + ctlAlarmClock1.AlarmTime.ToShortTimeString(); }

12. No Solution Explorer, clique com o boto direito do mouse Test e clique em
Set as StartUp Project.
13. No menu Debug, clique em Start Debugging.
Inicia o programa de Teste. Observe que a hora atual atualizado no controle
ctlAlarmClock, e que o hora de incio mostrado no controle DateTimePicker
14. Clique o DateTimePicker onde os minutos da hora so exibidos.
15. Usando o teclado, definir um valor em minutos que seja maior que a hora
atual mostrada por ctlAlarmClock um minuto.
O tempo para a Configurao de alarme mostrado na lblTest. Esperar que o
tempo exibido para atingir o tempo configurao alarme. Quando o tempo
exibido atingir o tempo ao qual o alarme definido, o lblAlarm ser memria
flash.
16. Desativar o alarme clicando btnAlarmOff. Agora voc pode redefinir o alarme.
Essa explicao passo a passo tem abordadas um nmero de principais
conceitos. Voc aprendeu para criar um controle composto pela combinao
controles e componentes em um continer controle composto. Voc aprendeu
para adicionar propriedades para o controle, e para escrever cdigo para
implementar funcionalidade personalizada. Na ltima seo, voc aprendeu
para estender a funcionalidade de um determinado controle composto a

Visual Studio

91

herana, e para alterar a funcionalidade de mtodos host por substituir esses


mtodos.

Um componente Multithreaded Simple com Visual C#


Walkthrough: criao
O BackgroundWorker Componente substitui e adiciona funcionalidade ao espao
para nome System.Threading; No entanto, espao para nome System.Threading
foi mantida para compatibilidade com verses anteriores e uso futuro, se voc
escolher. Para obter mais informaes, consulte Component BackgroundWorker
Overview.
Voc pode escrever aplicativos que esto capaz de executar vrias tarefas
simultaneamente. Essa capacidade, chamado multithreading, ou Liberar
segmentao uma maneira eficiente de componentes de design que so muito
processor-e exigem entrada do usurio. Um exemplo de um componente que pode
alterar usar de multithreading. seria um componente que calcula informaes de
folha de pagamento O componente pde processar dados inseridos em um banco
de dados por um usurio em um segmento enquanto clculos folha pagamento
muito processor-foram executados em outro. Ao executar esses processos em
segmentos separados, os usurios precisam aguardar o computador para concluir
clculos antes de inserir dados adicionais. Nessa explicao passo a passo, voc
criar um componente multissegmentado simples que executa vrios clculos
complexos simultaneamente.
Criando o projeto
O aplicativo consiste em um nico formulrio e um componente. O usurio ser
entrada valores e sinal para o componente para iniciar clculos. O formulrio ir
receber valores de seu componente e exibir-los em controles de rtulo. O
componente executar os clculos muito processor-e sinalizar o formulrio quando
concludo. Voc ir criar variveis pblicas no seu componente para armazenar
valores recebidos da interface do usurio. Voc tambm ir implementar mtodos
no seu componente para executar os clculos com base nos valores dessas
variveis.
Observao
Embora geralmente seja uma funo de um mtodo prefervel que calcule um valor, argumentos no
podem ser passados entre segmentos, nem valores podem ser retornados. Existem muitas maneiras
simples para fornecer valores para segmentos e para receber valores a partir deles. Nesta demonstrao,
voc ir retornar valores para a interface de usurio, atualizando pblicas variveis, e eventos sero
usados para notificar o programa principal quando um segmento de execuo foi concluda.
As caixas de dilogo e comandos de menu que voc v podem ser diferentes das descritas em Help
(Ajuda) dependendo das configuraes ativas ou edio. Para alterar as configuraes, escolha Import
and Export Settings No menu Tools. Para obter mais informaes, consulte Configuraes do Visual
Studio.
Para criar o formulrio
1.
2.

Criar um novo Windows Application projeto.


Nome do aplicativo Calculations e renomeie Form1.cs como frmCalculations.cs.
Quando Visual Studio solicita que voc para renomear o Form1 elemento de
cdigo, clique em Yes.
Este formulrio servir como a interface do usurio principal para seu
aplicativo.

Visual Studio

92

3.
4.

Adicionar cinco Label controles, quatro Button controles, e um TextBox


controle a seu formulrio.
Definir propriedades para esses controles da seguinte maneira:
Controle

Name (Nome)

Texto

label1

lblFactorial1

(vazio)

label2

lblFactorial2

(vazio)

label3

lblAddTwo

(vazio)

label4

lblRunLoops

(vazio)

label5

lblTotalCalculations

(vazio)

button1

btnFactorial1

Fatorial

button2

btnFactorial2

Fatorial - 1

button3

btnAddTwo

Adicionar dois

button4

btnRunLoops

Executar um loop

textBox1

txtValue

(vazio)

Para criar o componente Calculadora


1.

No menu Project, selecione Add Component.

2.

Nome do componente Calculator.

Para adicionar variveis pblicas ao componente Calculadora


1.
2.

Do Code Editor aberto para Calculator.


Adicione instrues para criar variveis pblicas que ser usado para passar
valores frmCalculations para cada segmento.
A varivel varTotalCalculations manter uma execuo total do nmero total de
clculos executada pelo componente, e as outras variveis vai receber valores
do formulrio.
public int varAddTwo; public int varFact1; public int varFact2; public int varLoopValue; public
double varTotalCalculations = 0;

Para adicionar mtodos e eventos ao componente Calculadora


1.

Declare Os delegados para os eventos que o componente ser usado para


comunicar valores para o formulrio.
Observao
Embora ser voc ser declarar quatro eventos, voc s precisar criar trs representantes porque dois
eventos ter a mesma assinatura.

2.
3.

Imediatamente abaixo as declaraes de varivel inseridas na etapa anterior,


a digite o seguinte cdigo:
// This delegate will be invoked with two of your events. public delegate void
FactorialCompleteHandler(double Factorial, double TotalCalculations); public delegate void
AddTwoCompleteHandler(int Result, double TotalCalculations); public delegate void
LoopCompleteHandler(double TotalCalculations, int Counter);

Visual Studio

93

4.

Declarar os eventos que o componente ser usado para se comunicar com


seu aplicativo. Fazer isso, adicionando o seguinte cdigo imediatamente
abaixo o cdigo digitado na etapa anterior.
public event FactorialCompleteHandler FactorialComplete; public event
FactorialCompleteHandler FactorialMinusOneComplete; public event AddTwoCompleteHandler
AddTwoComplete; public event LoopCompleteHandler LoopComplete;

5.

Imediatamente abaixo o cdigo que voc digitou na etapa anterior, digite o


seguinte cdigo:
// This method will calculate the value of a number minus 1 factorial // (varFact2-1!). public void
FactorialMinusOne() { double varTotalAsOfNow = 0; double varResult = 1; // Performs a factorial
calculation on varFact2 - 1. for (int varX = 1; varX <= varFact2 - 1; varX++) { varResult *= varX; //
Increments varTotalCalculations and keeps track of the current // total as of this instant.
varTotalCalculations += 1; varTotalAsOfNow = varTotalCalculations; } // Signals that the method
has completed, and communicates the // result and a value of total calculations performed up to
this // point. FactorialMinusOneComplete(varResult, varTotalAsOfNow); } // This method will
calculate the value of a number factorial. // (varFact1!) public void Factorial() { double varResult =
1; double varTotalAsOfNow = 0; for (int varX = 1; varX <= varFact1; varX++) { varResult *= varX;
varTotalCalculations += 1; varTotalAsOfNow = varTotalCalculations; }
FactorialComplete(varResult, varTotalAsOfNow); } // This method will add two to a number
(varAddTwo+2). public void AddTwo() { double varTotalAsOfNow = 0; int varResult = varAddTwo
+ 2; varTotalCalculations += 1; varTotalAsOfNow = varTotalCalculations;
AddTwoComplete(varResult, varTotalAsOfNow); } // This method will run a loop with a nested
loop varLoopValue times. public void RunALoop() { int varX; double varTotalAsOfNow = 0; for
(varX = 1; varX <= varLoopValue; varX++) { // This nested loop is added solely for the purpose of
slowing down // the program and creating a processor-intensive application. for (int varY = 1; varY
<= 500; varY++) { varTotalCalculations += 1; varTotalAsOfNow = varTotalCalculations; } }
LoopComplete(varTotalAsOfNow, varLoopValue); }

Transferindo Entrada de usurio para o componente


A prxima etapa para adicionar cdigo para frmCalculations para receber entrada do
usurio e para transferir e receber valores de e para o Calculator Componente.
Para implementar front-end funcionalidade para frmCalculations
1.
2.

Aberto frmCalculations no Code Editor.


Localize a public partial class frmCalculations instruo. Imediatamente abaixo do {
tipo:
Calculator Calculator1;

3.

Localize o construtor. Imediatamente antes adicione a seguinte linha: o },


// Creates a new instance of Calculator. Calculator1 = new Calculator();

4.

No designer, clique cada boto para gerar o contorno de cdigo para


manipuladores de eventos de cada controle Click e adicione cdigo para criar
os manipuladores.
Se parecer Quando concluda, seu Click manipuladores de eventos devem
com o seguinte:

Visual Studio

94

// Passes the value typed in the txtValue to Calculator.varFact1. private void


btnFactorial1_Click(object sender, System.EventArgs e) { Calculator1.varFact1 =
int.Parse(txtValue.Text); // Disables the btnFactorial1 until this calculation is complete.
btnFactorial1.Enabled = false; Calculator1.Factorial(); } private void btnFactorial2_Click(object
sender, System.EventArgs e) { Calculator1.varFact2 = int.Parse(txtValue.Text);
btnFactorial2.Enabled = false; Calculator1.FactorialMinusOne(); } private void
btnAddTwo_Click(object sender, System.EventArgs e) { Calculator1.varAddTwo =
int.Parse(txtValue.Text); btnAddTwo.Enabled = false; Calculator1.AddTwo(); } private void
btnRunLoops_Click(object sender, System.EventArgs e) { Calculator1.varLoopValue =
int.Parse(txtValue.Text); btnRunLoops.Enabled = false; // Lets the user know that a loop is
running lblRunLoops.Text = "Looping"; Calculator1.RunALoop(); }

5.

Aps o cdigo adicionado na etapa anterior, digite o seguinte para manipular


os eventos receber do Calculator1 seu formulrio:
private void FactorialHandler(double Value, double Calculations) // Displays the returned value in
the appropriate label. { lblFactorial1.Text = Value.ToString(); // Re-enables the button so it can be
used again. btnFactorial1.Enabled = true; // Updates the label that displays the total calculations
performed lblTotalCalculations.Text = "TotalCalculations are " + Calculations.ToString(); } private
void FactorialMinusHandler(double Value, double Calculations) { lblFactorial2.Text =
Value.ToString(); btnFactorial2.Enabled = true; lblTotalCalculations.Text = "TotalCalculations are
" + Calculations.ToString(); } private void AddTwoHandler(int Value, double Calculations) {
lblAddTwo.Text = Value.ToString(); btnAddTwo.Enabled = true; lblTotalCalculations.Text =
"TotalCalculations are " + Calculations.ToString(); } private void LoopDoneHandler(double
Calculations, int Count) { btnRunLoops.Enabled = true; lblRunLoops.Text = Count.ToString();
lblTotalCalculations.Text = "TotalCalculations are " + Calculations.ToString(); }

6.

Do } no construtor de frmCalculations, adicione o seguinte cdigo


imediatamente antes para manipular os eventos personalizados seu
formulrio receber do Calculator1.
Calculator1.FactorialComplete += new
Calculator.FactorialCompleteHandler(this.FactorialHandler);
Calculator1.FactorialMinusOneComplete += new
Calculator.FactorialCompleteHandler(this.FactorialMinusHandler); Calculator1.AddTwoComplete
+= new Calculator.AddTwoCompleteHandler(this.AddTwoHandler); Calculator1.LoopComplete
+= new Calculator.LoopCompleteHandler(this.LoopDoneHandler);

Teste seus aplicativos


Agora voc tenha criado um projeto que incorpora um formulrio e um componente
capaz de realizar vrios clculos complexos. Embora voc no tiver implementado
capacidade multithreading ainda, voc testar o projeto para verificar sua
funcionalidade antes de prosseguir.
Para testar seu projeto
1.

Partir do Debug menu, escolha Start Debugging.


O aplicativo comea e frmCalculations aparece.

2.

Na caixa de texto, tipo 4, clique no boto rotulado Add Two.


O nmero " 6 " deve ser exibido no rtulo abaixo dele, e devem ser exibidos
em lblTotalCalculations " clculos total so 1 ".

Visual Studio

95

3.

Agora clique no boto rotulado Factorial - 1.


O nmero " 6 " deve ser exibido sob o boto, e lblTotalCalculations agora leituras
" clculos total so 4. "

4.

Em alterar o valor na caixa de texto para 20, seguida, clique no boto


rotulado Factorial.
O nmero " 2.43290200817664E + 18 " exibido abaixo dele, e
lblTotalCalculations agora l " clculos total so 24. "

5.

Altere o valor na caixa de texto para 50000, e, em seguida clique o boto


rotulado Run A Loop.
Observe que h um intervalo pequeno mas notvel antes este boto seja
reativada. O rtulo sob este boto deve ler " 50000 " e os clculos total
exibidos so " 25000024 ".

6.

Alterar o valor na caixa de texto para 5000000 e clique no boto rotulado


Run A Loop, e clique imediatamente no boto rotulado Add Two. Clique nela
novamente.
O boto no responder, nem qualquer controle no formulrio ir responder
at que os loops tenha sido concludos.
Se seu programa executado somente um nico segmento de execuo,
clculos muito processor-como o exemplo acima ter a tendncia unir o
programa Backup at que os clculos tenha sido concludos. Na prxima
seo, voc adicionar capacidade multithreading ao seu aplicativo para que
vrios segmentos podem ser executados uma vez.

Adicionando recurso Multithreading


O exemplo anterior demonstrado as limitaes de aplicativos executados somente
um nico segmento de execuo. Na prxima seo voc usar a Thread classe
para adicionar vrios segmentos de execuo ao seu componente.
Para adicionar a subrotina segmentos
1.
2.

Aberto Calculator.cs no Code Editor.


Na parte superior do cdigo, localize a declarao de classe, e imediatamente
abaixo, o { tipo o seguinte:
// Declares the variables you will use to hold your thread objects. public System.Threading.Thread
FactorialThread; public System.Threading.Thread FactorialMinusOneThread; public
System.Threading.Thread AddTwoThread; public System.Threading.Thread LoopThread;

3.

Imediatamente antes do fim da declarao de classe na parte inferior do


cdigo, adicione o mtodo a seguir:
public void ChooseThreads(int threadNumber) { // Determines which thread to start based on the
value it receives. switch(threadNumber) { case 1: // Sets the thread using the AddressOf the
subroutine where // the thread will start. FactorialThread = new System.Threading.Thread(new
System.Threading.ThreadStart(this.Factorial)); // Starts the thread. FactorialThread.Start();
break; case 2: FactorialMinusOneThread = new System.Threading.Thread(new
System.Threading.ThreadStart(this.FactorialMinusOne)); FactorialMinusOneThread.Start();
break; case 3: AddTwoThread = new System.Threading.Thread(new
System.Threading.ThreadStart(this.AddTwo)); AddTwoThread.Start(); break; case 4: LoopThread
= new System.Threading.Thread(new System.Threading.ThreadStart(this.RunALoop));
LoopThread.Start(); break; } }

Visual Studio

96

Quando instanciado, ele requer um argumento na forma de. um Thread um


ThreadStart O ThreadStart um representante que aponta para o endereo
do mtodo onde o segmento para comear. A ThreadStart no pode
receber parmetros ou valores secreta, e portanto somente pode indicar um
void mtodo. O ChooseThreads mtodo voc apenas implementado receber um
valor a partir do programa cham lo e usa esse valor para determinar o
segmento apropriado para iniciar.
Para adicionar o cdigo apropriado a frmCalculations
1.

Abre o frmCalculations.cs arquivo no localize private void btnFactorial1_Click. o


Code Editor,
1.

Comentrio fora da linha que chama o Calculator1.Factorial1 mtodo


diretamente como mostrado:
// Calculator1.Factorial()

2.

Adicione a seguinte linha para chamar o Calculator1.ChooseThreads


mtodo:
// Passes the value 1 to Calculator1, thus directing it to start the // correct thread.
Calculator1.ChooseThreads(1);

2.

Fazer modificaes semelhantes para os outros button_click mtodos.


Observao
Certifique-se incluir o valor apropriado para o Threads argumento.

3.

Quando voc tiver terminado, seu cdigo dever ter semelhante seguinte:

private void btnFactorial1_Click(object sender, System.EventArgs e) // Passes the value typed in the
txtValue to Calculator.varFact1 { Calculator1.varFact1 = int.Parse(txtValue.Text); // Disables the
btnFactorial1 until this calculation is complete btnFactorial1.Enabled = false; //
Calculator1.Factorial(); Calculator1.ChooseThreads(1); } private void btnFactorial2_Click(object
sender, System.EventArgs e) { Calculator1.varFact2 = int.Parse(txtValue.Text); btnFactorial2.Enabled
= false; // Calculator1.FactorialMinusOne(); Calculator1.ChooseThreads(2); } private void
btnAddTwo_Click(object sender, System.EventArgs e) { Calculator1.varAddTwo =
int.Parse(txtValue.Text); btnAddTwo.Enabled = false; // Calculator1.AddTwo();
Calculator1.ChooseThreads(3); } private void btnRunLoops_Click(object sender, System.EventArgs e)
{ Calculator1.varLoopValue = int.Parse(txtValue.Text); btnRunLoops.Enabled = false; // Lets the user
know that a loop is running lblRunLoops.Text = "Looping"; // Calculator1.RunALoop();
Calculator1.ChooseThreads(4); }

Empacotamento chamadas para controles


Agora voc ir facilitam atualizando a exibio no formulrio. Como controles so
sempre pertence ao segmento principal de execuo, qualquer chamada para um
controle de um segmento subordinada requer uma empacotamento chamada.
Empacotamento o ato de mover uma chamada entre limites do segmento, e
muito dispendioso em termos de recursos. Para minimizar a quantidade de
empacotamento que precisa a ocorrer, e certifique-se que as chamadas sero
tratadas de forma isenta de segmentos, voc usar o
System.Windows.Forms.Control.BeginInvoke(System.Delegate) mtodo para
chamar mtodos no segmento principal de execuo, a quantidade de entre
segmentos Boundary-empacotamento que deve ocorrer assim Minimizing. Esse tipo

Visual Studio

97

de chamada necessrio ao chamar mtodos que manipulam controles. Para obter


detalhes, consulte HOW TO: Manipulate controles de segmentos.
Para criar os procedimentos invoking controle1.

Abrir o Editor de frmCalculations cdigo. Na seo Declaraes, adicione o


seguinte cdigo:
public delegate void FHandler(double Value, double Calculations); public delegate void
A2Handler(int Value, double Calculations); public delegate void LDHandler(double Calculations,
int Count);

e InvokeBeginInvoke exigem um representante para o mtodo apropriado


como um argumento. Essas linhas declarar o representante assinaturas que
sero usadas por BeginInvoke para chamar os mtodos apropriados.
2.

Adicionar os seguintes mtodos vazios a seu cdigo.


public void FactHandler(double Value, double Calculations) { } public void Fact1Handler(double
Value, double Calculations) { } public void Add2Handler(int Value, double Calculations) { } public
void LDoneHandler(double Calculations, int Count) { }

3.

No menu Edit, uso Cut e Paste Para Recortar todo o cdigo do mtodo
FactorialHandler e col-lo em FactHandler.

4.

Repita a etapa anterior para FactorialMinusHandler e Fact1Handler, AddTwoHandler.


e Add2Handler, e LoopDoneHandler e LDoneHandler
Quando terminar, no deve haver nenhum cdigo restantes em
FactorialHandler, Factorial1Handler, AddTwoHandler, e LoopDoneHandler. e todo o
cdigo usado para conter esses devem ter sido movidos para novos mtodos
apropriados

5.

Chame o BeginInvoke mtodo para chamar os mtodos de forma


assncrona. Voc pode chamar BeginInvoke de seu formulrio (this.) ou
qualquer um dos controles no formulrio
Quando concluda, seu cdigo dever ter semelhante seguinte:
protected void FactorialHandler(double Value, double Calculations) { // BeginInvoke causes
asynchronous execution to begin at the address // specified by the delegate. Simply put, it
transfers execution of // this method back to the main thread. Any parameters required by // the
method contained at the delegate are wrapped in an object and // passed. this.BeginInvoke(new
FHandler(FactHandler), new Object[] {Value, Calculations}); } protected void
FactorialMinusHandler(double Value, double Calculations) { this.BeginInvoke(new
FHandler(Fact1Handler), new Object [] {Value, Calculations}); } protected void
AddTwoHandler(int Value, double Calculations) { this.BeginInvoke(new
A2Handler(Add2Handler), new Object[] {Value, Calculations}); } protected void
LoopDoneHandler(double Calculations, int Count) { this.BeginInvoke(new
LDHandler(LDoneHandler), new Object[] {Calculations, Count}); }

Pode parecer que o manipulador de eventos simplesmente est fazendo uma


chamada para o mtodo prxima. O manipulador de eventos realmente est
causando um mtodo para ser chamado no segmento principal da operao.
Essa abordagem salva em chamadas entre limites do segmento e permite que
o aplicativos multisegmentados para executar com eficincia e sem medo de
causar lockup. Para obter detalhes sobre como trabalhar com controles em

Visual Studio

98

um ambiente com vrios segmentos, consulte HOW TO: Manipulate controles


de segmentos.
6.

Salve seu trabalho.

7.

Teste sua soluo, escolhendo Start Debugging no menu Debug.


1.

Digite 10000000 na caixa de texto e clique em Run A Loop.


" loop " exibido no rtulo abaixo neste boto. Esse loop deve tomar
uma quantidade significativa de tempo para executar. Se conclui muito
cedo, ajustar o tamanho do nmero de acordo.

2.

Na sucesso rpida, clique em Todos os trs botes que ainda esto


ativados. Voc encontrar que todos os botes responder a uma
entrada. O rtulo abaixo Add Two deve ser o primeiro para exibir um
resultado. Resultados posteriormente sero exibidos nos rtulos abaixo
os botes factorial. Esses resultados avaliada como infinito, como o
nmero retornado por uma FATORIAL 10,000,000 muito grande para
uma varivel de preciso dupla para conter. Finalmente, aps um atraso
adicional, resultados so retornados no Run A Loop boto abaixo.
Como voc apenas observado, quatro conjuntos separados de clculos
foram executados simultaneamente em quatro segmentos separados. A
interface do usurio permaneceu responde s solicitaes, e eles foram
retornados aps cada segmento concludo.

Coordenar seus segmentos


Um usurio experiente de aplicativos multisegmentados pode Perceive uma falha
sutis com o cdigo como digitado. Recuperar as linhas de cdigo de cada mtodo
desempenho clculo-em Calculator:
varTotalCalculations += 1; varTotalAsOfNow = varTotalCalculations;

Estas duas linhas de cdigo incrementar a varivel varTotalCalculations Pblica e defina


a varivel varTotalAsOfNow local com esse valor. Esse valor retornado ao
frmCalculations e exibido em um controle rtulo. Mas o valor correto sendo
retornado? Se apenas um nico segmento de execuo estiver sendo executado, a
resposta claramente Sim. Mas se vrios segmentos em execuo, a resposta ser
mais certeza. Cada segmento tem a capacidade para incrementar a varivel
varTotalCalculations. possvel que aps um segmento incrementa essa varivel, mas
antes ele copia o valor a varTotalAsOfNow, outro segmento pode alterar o valor desta
varivel por incrementando-. Isso leva possibilidade que cada segmento na
verdade, est, relatando resultados imprecisos. do Declarao lock (Referncia do
C#) fornece Visual C# para permitir sincronizao de segmentos para garantir que
cada segmento sempre retorna um resultado preciso. A sintaxe para lock a
seguinte:
lock(AnObject) { // Insert code that affects the object. // Insert more code that affects the object. // Insert
more code that affects the object. // Release the lock. }

Quando o lock Bloco for digitado, execuo na expresso especificada ser


bloqueada at que o segmento especificado tem um bloqueio exclusivo no objeto
em questo. No exemplo mostrado acima, a execuo est bloqueada no AnObject.
Deve lock ser usado com um objeto que retorna uma referncia em vez de um
valor. A execuo pode prossiga como um bloco sem interferncia de outros
segmentos. Um conjunto de instrues que execute como uma unidade so disse
para ser atmicas. Quando encontrado, a expresso liberada e os segmentos so
permitidos para continuar normalmente. o }

Visual Studio

99

Para adicionar a instruo de bloqueio ao seu aplicativo


1.

Aberto Calculator.cs no Code Editor.

2.

Localizar cada ocorrncia do cdigo a seguir:


varTotalCalculations += 1; varTotalAsOfNow = varTotalCalculations;

Deve haver quatro instncias desse cdigo, um em cada mtodo de clculo.


3.

Modifique este cdigo para que ele l da seguinte maneira:


lock(this) { varTotalCalculations += 1; varTotalAsOfNow = varTotalCalculations; }

4.

Salve seu trabalho e test-lo como no exemplo anterior.


Voc pode perceber um pequeno impacto no desempenho do seu programa.
Isso ocorre porque a execuo de segmentos pra quando um bloqueio
exclusivo obtido no seu componente. Embora ele garante a preciso, essa
abordagem impedes alguns dos benefcios de desempenho de vrios
segmentos. Voc deve cuidadosamente considerar a necessidade de
segmentos, bloqueio e implement-las somente quando absolutamente
necessrio.

Walkthrough: Inheriting a partir de um controle do Windows


Forms com Visual C#
Com Visual C# 2005, voc pode criar poderosos controles personalizados atravs
Herana. A herana capaz de criar controles que mantenham toda da
funcionalidade inerente do Windows Forms controles padro mas tambm
incorporar funcionalidade personalizada. Nessa explicao passo a passo, voc
criar um controle herdado simples chamado ValueButton. Esse boto herdaro
funcionalidade do controle Windows Forms Button padro, e ser expor uma
propriedade personalizada chamada ButtonValue.
Observao
As caixas de dilogo e comandos de menu que voc v podem ser diferentes das descritas em Help
(Ajuda) dependendo das configuraes ativas ou edio. Para alterar as configuraes, escolha Import
and Export Settings No menu Tools. Para obter mais informaes, consulte Configuraes do Visual
Studio.
Criando o projeto
Quando voc cria um novo projeto, voc especificar seu nome, para definir o raiz,
nome conjunto, e nome do projeto, e para garantir que o componente padro ser
no espao para nome correto.
Para criar a biblioteca controle ValueButtonLib e o controle ValueButton
1.

No menu File, aponte para New e clique Project para abrir a New Project
caixa de dilogo.

2.

Selecione o Windows Control Library modelo de projeto a partir da lista de


Visual C# projetos e tipo ValueButtonLib na caixa Name.
O projeto nome, ValueButtonLib, tambm atribuda para a raiz por padro. A
raiz usado para qualificar os nomes dos componentes no conjunto. Por
exemplo, se dois conjuntos de mdulos (assemblies) fornecer componentes
nomeado ValueButton, voc pode especificar seu ValueButton componente usando

Visual Studio

100

ValueButtonLib.ValueButton Para obter mais informaes, consulte Namespaces

(Guia de programao C#).


3.

Em Solution Explorer, clique com o boto direito do mouse


UserControl1.cs e depois escolha Rename No menu de atalho. Alterar o
nome do arquivo para ValueButton.cs. Clique no Yes boto quando lhe for
perguntado se voc deseja renomear todas as referncias para o elemento de
cdigo ' UserControl1 '.

4.

No Solution Explorer, clique com o boto direito do mouse


ValueButton.cs e selecione View Code.

5.

Localize a class linha public partial class ValueButton Instruo,. e alterar o tipo do
qual esse controle herdado UserControl para Button Isso permite que o
controle herdadas para herdar todas as funes do controle Button.

6.

No Solution Explorer, abra o ValueButton.cs n para exibir o arquivo


cdigo gerado pelo designer-, ValueButton.Designer.cs. Abrir este arquivo
no Code Editor.

7.

Localize o InitializeComponent mtodo e remover a linha que atribui a


AutoScaleMode propriedade. Essa propriedade no existe no controle Button.

8.

No menu File, optar Save All por salvar o projeto.


Observao
Um criador visual est no mais disponvel. Porque o Button controle faz sua prpria pintura, voc no
consegue para modificar sua aparncia no designer. Sua representao visual ser ser exatamente a
mesma que a classe ela herda da) (ou seja, Button a menos que modificado no cdigo de. Ainda assim
voc pode adicionar componentes, que tm nenhum elemento UI, para a superfcie de design.

Adicionar uma propriedade ao seu controle Inherited


Um uso possveis de herdadas controles Windows Forms a criao de controles
que so idnticos no aspecto e estilo de padro controles Windows Forms, mas
expe propriedades personalizadas. No nesta seo, voc adicionar uma
propriedade chamada ButtonValue para o controle.
Para adicionar a propriedade Value
1.

2.

Na Solution Explorer, clique com o boto direito do mouse


ValueButton.cs e, em seguida clique na View Code partir do menu de
atalho.
Localize a class instruo. Imediatamente aps o { tipo o cdigo a seguir:
[C#]
// Creates the private variable that will store the value of your // property. private int varValue; //
Declares the property. public int ButtonValue { // Sets the method for retrieving the value of your
property. get { return varValue; } // Sets the method for setting the value of your property. set {
varValue = value; } }

Este cdigo define os mtodos pelo qual a ButtonValue propriedade est


armazenados e recuperados. A get instruo define o valor retornado para o
valor que armazenado na varivel varValue particular, e a set instruo
define o valor da varivel particular pelo uso da palavra-chave value.
3.

No menu File, optar Save All por salvar o projeto.

Teste O controle

Visual Studio

101

Controles so projetos no autnoma; eles deve ser hospedado em um continer. A


fim de testar o controle, voc deve fornecer um projeto de teste para que ele seja
executado. Voc tambm deve tornar o controle acessveis para o projeto teste
criando (compilao)-lo. No nesta seo, ser criar o controle e test-lo em um
formulrio do Windows.
Para criar o controle
No menu Build, clique em Build Solution.

A compilao deve ser bem-sucedida sem nenhum erros do compilador ou


avisos.
Para criar um projeto de teste
1.

No menu File, aponte para Add e clique New Project para abrir a Add New
Project caixa de dilogo.

2.

Selecione o Windows n, sob o Visual C# n, e clique em Windows


Application.

3.

Na caixa Name, digite Test.

4.

No Solution Explorer, clique com o boto direito do mouse no References


n do seu projeto de teste, em seguida, selecione Add Reference a partir do
menu de atalho para exibir a Add Reference caixa de dilogo.

5.

Clique na guia rotuladas Projects. O ValueButtonLib projeto ser listado em


Project Name. Clique duas vezes o projeto para adicionar a referncia para o
projeto de teste.

6.

Clique com boto direito no Solution Explorer, mouse Test e selecione


Build.

Para adicionar o controle ao formulrio


1.

No Solution Explorer, clique com o boto direito do mouse Form1.cs e


escolha View Designer a partir do menu de atalho.

2.

Na Toolbox, clique ValueButtonLib Components. Clique duas vezes


ValueButton.
A ValueButton aparece no formulrio.

3.

Clique com o boto direito do mouse e selecione Properties a partir do


menu de atalho. o ValueButton

4.

Na janela Properties, examine as propriedades deste controle. Observe que


eles so idntico s propriedades expostos por um boto padro, exceto que
no h uma propriedade adicionais, ButtonValue.

5.
6.

Defina a ButtonValue propriedade como 5.


Na guia All Windows Forms da Toolbox, clique duas vezes Label Para
adicionar um Label controle ao seu formulrio.

7.

Realoque o rtulo para o centralizar do formulrio.

8.

Clique duas vezes valueButton1.


A Code Editor abre para o valueButton1_Click evento.

9.

Inserir a linha de cdigo a seguir.


[C#]
label1.Text = valueButton1.ButtonValue.ToString();

Visual Studio

102

10. No Solution Explorer, clique com o boto direito do mouse Test e escolha
Set as Startup Project No menu de atalho.
11. No menu Debug, selecione Start Debugging.
Aparece Form1.
12. Clique em valueButton1.
O nmero ' 5 ' exibida no label1, demonstrando que a ButtonValue propriedade
do seu controle herdado foi passado para label1 atravs do valueButton1_Click
mtodo. Assim o ValueButton controle herda todas as funes do boto
Windows Forms padro, mas expe uma propriedade adicionais e
personalizados.

Visual Studio

103

Explicaes passo-a-passo do Visual


Studio
Essas orientaes introduzir as reas importantes do produto Visual Studio.
Explicao passo a passo cada discute o desenvolvimento de um tipo aplicativo
especfico ou recurso de aplicativo principal usando uma srie de instrues passo a
passo. Na maioria dos casos, explicao passo a passo cada incorpora mtodos ou
recursos de partes diferentes do Visual Studio. Isso fornece uma introduo prtica
para os vrios recursos principais do Visual Studio de uma maneira clara e
ordenada.

Walkthroughs de aplicativos cliente Rich


O aplicativo rich client tpica um executvel autnomo com uma interface grfica
composta de vrios controles para o usurio. As orientaes seguir descrevem o
processo de Criando aplicativo com base em formulrios usando vrios tipos
controle diferente, conexo com um banco de dados existente, e depois exibir os
dados no formulrio.
Observao
O objetivo principal dessas orientaes para demonstrar os vrios recursos do Visual Studio disponveis
para o desenvolvedor do cliente Rich. Portanto, o aplicativo rich client tpico contm um subconjunto dos
recursos apresentados.
Nesta seo
Criando um aplicativo cliente Rich com MFC
Demonstra como criar uma interface cliente rico-usando a biblioteca) classe
MFC (Microsoft Foundation, uma biblioteca de classes Well-tested que
compatvel diversos amplo de recursos comuns a todos os aplicativos
Windows, e Consumir um servio XML da Web criado com Visual Basic ou
Visual C#.
Sees relacionadas
Criar um formulrio simples do Windows
Usando um exemplo simples mas completa, ilustra as etapas fundamentais
necessrias para criar Windows Forms no Visual Basic e Visual C#.
Demonstrar herana Visual
Descreve como criar um formulrio Windows base e compil-lo em uma
biblioteca de classes. Voc ir importar esta biblioteca de classes para outro
projeto, e criar um novo formulrio herdeira do formulrio bsico.
Criar um aplicativo distribudos
Explica como criar um aplicativo de vrias camadas, distribudos que tem um
cliente Windows Rich e uma interface do navegador.
Walkthroughs do Windows Forms
Lista orientaes adicionais que podem ser executados para familiarizar-se
com recursos do Visual Studio.

Visual Studio

104

Walkthrough: Criando um aplicativo cliente Rich com MFC


Explicao passo a passo o seguir descreve um procedimento para criar um
aplicativo rich client MFC-Based e vrios outros recursos do Visual Studio .NET.
Durante o curso desta explicao passo a passo, voc ir realizar as atividades a
seguir:

Criar uma soluo-com base MFC que exibe dados de um banco de dados
existente e exibe os seguintes recursos usando vrias caixas de dilogo:

Hospedando um controle ActiveX sem janelas

Usando dinmico caixas de dilogo HTML (DHTML)


Validando o usurio do aplicativo usando um servio XML da Web

existente.
Para concluir o explicao passo a passo, deve fornecer um banco de dados
existente e pelo menos uma tabela pesquisvel.
Observao
Essa explicao passo a passo usa o pubs banco de dados e authors tabela como um banco de dados
exemplo e tabela.
Criar o aplicativo cliente Rich MFC
Para criar o aplicativo MFC
1.

No menu File, clique em New, e clique em Project


A New Project caixa de dilogo ser exibida.

2.

No painel tipos Project, clique em Visual C++ Projects, e em Painel


Modelos, clique no MFC Application cone.

3.

Na caixa Name, digite MyProject.

4.

Clique OK para fechar a caixa de dilogo e abrir o MFC Application Wizard.

Usando o MFC Application Wizard, voc modificar seu projeto para oferecer
suporte o acesso a bancos de dados e exibir recursos do aplicativo rich client.
Observao
Essa explicao passo a passo presume que o servidor est sendo acessado um servidor SQL e o pubs
banco de dados que existe no servidor.
Para implementar suporte a banco de dados
1.

No MFC Application Wizard, selecione Database Support.

2.

Selecione a Database View with File Support opo.

3.

Clique no Data Source boto.

4.

Na caixa OLE DB Provider(s) de listagem, clique no Microsoft OLE DB


Provider for SQL Server item e clique em Next.

5.

Digite ou selecione um nome de servidor existente.

6.

Selecione Use Windows NT Integrated Security.

Visual Studio

105

7.

Selecione o pubs banco de dados.

8.

Clique no OK boto para estabelecer a conexo.

9.

Na caixa Select Database Object de dilogo, selecione a authors tabela.

10. Selecione OK para fechar a caixa de dilogo.


11. Clique Finish para criar o aplicativo estrutura.
12. Aps a criao do projeto, ser necessrio remover a #error linha de
MyProjectSet.h.
Depois que o aplicativo estrutura for criado, principais recursos podem ser
adicionados.
Acessar e exibir dados de um banco de dados existente
Nesta seo, voc usar um formulrio simples e controle para demonstrar o
acesso e exibio dos dados da tabela authors. Porque este apenas uma
demonstrao, consulta e exibio so simples. Os resultados da consulta (todos os
autores na tabela) so exibidos em uma caixa de listagem.
O MyProject aplicativo j contm um objeto de formulrio (chamado
IDD_MYPROJECT_FORM) localizado sob o n dilogo no modo de exibio de
recurso,. Voc ir modificar este formulrio para exibir uma lista simples de autores
da tabela authors.
Para modificar o formulrio
1.
2.
3.

No modo de exibio de recursos, expanda o Projeto, expanda o Dialog n,


e clique duas vezes no objeto de formulrio padro). (IDD_MYPROJECT_FORM
Arraste um List Box controle para o formulrio padro.
Clique com o boto direito do mouse no List Box controle e, no menu de
atalho, clique em Add Variable.
O Add Member Variable Wizard aparece.

4.

Na caixa Variable name, digite m_DataList e clique em Finish.

5.

Arraste um Button controle para o formulrio padro. Na janela


Propriedades, alterar a Caption caixa para Control Host.

6.

Arraste um Button controle para o formulrio padro. Na janela


Propriedades, alterar a Caption caixa para DHTML Dialog.
Observao
Esses dois controles sero usados posteriormente no explicao passo a passo o para acessar outros
recursos do aplicativo.

Para exibir os resultados da consulta


1.

No modo classe, expanda o n de projeto e clique duas vezes no


OnInitialUpdate mtodo da classe CMyProjectView.

2.

Adicione o seguinte cdigo aps qualquer cdigo existente na funo:


HRESULT hr = S_OK; TCHAR szAuthor[80]; CMyProjectSet &dbset = GetDocument()>m_MyProjectSet; [db_command(name="cmd", source_name="dbset", hresult=hr) { SELECT
au_lname ([bindto]szAuthor) FROM AUTHORS }]; while(cmd.MoveNext() == S_OK)
m_DataList.InsertString(-1, szAuthor);

Visual Studio

106

Esse cdigo usa o db_command atributo ao inicializar o conjunto de dados de


objeto do documento (m_MyProjectSet.) com os nomes de todos os autores
atuais na tabela ltima
3.

No menu Build, clique em Build Solution.

4.

No menu Debug, clique em Start Without Debugging.


Os resultados da consulta sero exibidos na caixa de listagem do formulrio
modo filho.

Criando e hospedando um controle ActiveX sem janelas


A modificao prxima para o aplicativo rich client uma caixa de dilogo que
hospeda um controle personalizado simples sem janelas. A primeira etapa para
criar um controle ActiveX personalizado com um evento simples. Em seguida um
objeto Caixa de dilogo criado que contm o controle e manipular o evento de
controle.
Para criar o controle personalizado
1.
2.

No Explorer Solution, clique com o boto direito do mouse a MyProject


Soluo.
No menu de atalho, clique em Add, e clique em New Project
A New Project caixa de dilogo ser exibida.

3.
4.

No painel tipos Project, selecione Visual C++ Projects, e no painel Modelos,


clique no ATL Project cone
Digite CustomCtl para o nome do novo projeto e clique em OK.
O ATL Project Wizard aparece.

5.

Clique Finish para aceitar as configuraes padro e criar o projeto.

6.

Clique com o CustomCtl projeto.

7.

No menu de atalho, clique em Add, e clique em Add Class


A Add Class caixa de dilogo ser exibida.

8.

Clique duas vezes no ATL Control item.


O ATL Control Wizard aparece.

9.

Na ATL Control Wizard, insira MyCtl na caixa Short name.

10. Na pgina Options, escolha Connection points.


11. Clique Finish para criar o objeto controle personalizado.
Depois que o controle for criado, voc adicionar um evento simples chamado Click.
Este evento acionado pelo controle sempre que o mouse clicado na rea de
controle.
Para criar o evento Click
1.
2.

No modo de classe, expanda o CustomCtl n.


Clique com o boto direito do mouse o interface de eventos para o controle
personalizado (_IMyCtlEvents).

3.

No menu de atalho, clique em Add, e clique em Add Method

4.

Insira os seguintes valores usando o Adicionar Assistente mtodo:

Return typevoid

Visual Studio

107

Method nameClick

5.

Clique Finish para criar o Click evento.

6.

No modo de classe, selecione a classe de controle (CMyCtl).

7.

Na janela Propriedades, clique no Messages boto e adicionar um


OnLButtonDown manipulador para a WM_LBUTTONDOWN mensagem.

8.

Adicione o seguinte cdigo para o corpo do manipulador:


Click(); return 0;

9.

No menu Build, clique em Build Solution.

Depois que a soluo cria com xito, uma caixa de dilogo simples pode hospedar o
controle.
Para hospedar o controle
1.

No modo de exibio do recurso, clique com o boto direito do mouse a


MyProject Soluo.

2.

No menu de atalho, clique em Add, e clique em Add Resource

3.

Clique no Dialog item e clique em New.

4.

Clique com boto direito mouse na IDD_DIALOG1 caixa de dilogo e clique


Add Class no menu de atalho.
O assistente classe MFC aparece.

5.

No Assistente para classe MFC, insira os seguintes valores:

Class nameCMyCtlDlg

Base classCDialog

6.

Clique em Finish.

7.

Clique com o boto direito do mouse na IDD_DIALOG1 caixa de dilogo e


selecione Insert ActiveX Control no menu de atalho.

8.

Na caixa de dilogo, selecione CMyCtl Object e Insert ActiveX Control


clique OK para adicionar o controle.

9.

Selecione o controle ActiveX em um modelo de dilogo.

10. Na janela Propriedades, clique o Control Events boto e adicione um


ClickMyctl1 manipulador para o Click evento.
11. Adicione o seguinte cdigo para o corpo do manipulador de eventos:
AfxMessageBox("Click event fired");

A etapa final envolve conectando a caixa de dilogo para o aplicativo rich client.
Isso feito com cdigo no manipulador para o boto Controlar host voc criou
anteriormente, no tpico Accessing and Displaying Data from an Existing
Database.
Para exibir a caixa de dilogo de controle host
1.

Do IDD_MYPROJECT_FORM no modo de exibio de recursos, exibir o


formulrio principal clicando duas vezes (localizada sob o Dialog n do
arquivo de recurso para a MyProject Soluo).

2.

Clique duas vezes no Control Host boto, adicionada anteriormente.

3.

Adicione o seguinte cdigo para a funo do manipulador:

Visual Studio

108

CMyCtlDlg dlg; dlg.DoModal( );

4.

Adicione o cdigo a seguir aps a ltima #include Instruo no arquivo de


origem atual:
#include "MyCtlDlg.h"

Isso inclui o arquivo.h da classe implementar a caixa de dilogo Controle


host.
5.

No menu Build, clique em Build Solution.

6.

No menu Debug, clique em Start Without Debugging.

Voc pode chamar a caixa de dilogo host controle pressionando o Control Host
boto. Acionam o evento personalizado Click clicando no boto esquerdo do mouse
dentro do controle.
Implementar uma caixa de dilogo DHTML
Outro recurso dos aplicativos cliente Rich o uso de caixas de dilogo que utilizam
HTML para a interface do usurio em vez de recursos dilogo tradicional. Para fins
dessa explicao passo a passo, uma caixa de dilogo DHTML simples ser
implementada, contendo um controle de imagem que exibe um bitmap simples.
Para implementar a caixa dilogo DHTML
1.

Clique no modo de exibio de recursos, com o MyProject projeto.

2.

No menu de atalho, clique em Add, e clique em Add Resource

3.

Clique no Dialog item e clique New para criar uma nova caixa de dilogo.

4.

Remover esses so implementados em HTML nas etapas subseqentes. e


Cancel Botes do modelo de dilogo; o OK

5.

Clique com o boto direito do mouse o IDD_DIALOG2 formulrio Caixa de


dilogo e selecione Add Class

6.

Insira os seguintes valores:

Class nameCMyDhtmlDlg

Base classCDHtmlDialog

7.
8.

Clique em Finish.
No modo de exibio de recursos, sob o n HTML, clique duas vezes no
IDR_HTML_MYDHTMLDLG item e clique na guia HTML no painel do projeto para

editar o arquivo HTML associado.


9.

Substituir o texto existente (que deve ser semelhante TODO: Place controls here).
com This is the text content of my DHTML dialog box

Como com o dilogo Host de controle implementado anteriormente, esta caixa de


dilogo ser exibida quando o usurio pressiona um boto (DHTML Dialog.) no
formulrio principal do aplicativo
Para exibir a caixa de dilogo DHTML
1.

Do IDD_MYPROJECT_FORM no modo de exibio de recursos, exibir o


formulrio principal clicando duas vezes (localizada sob o n de dilogo do
arquivo de recurso para a MyProject Soluo).

2.

Clique duas vezes no DHTML Dialog boto, adicionada anteriormente.

3.

Adicione o seguinte cdigo para a funo do manipulador:

Visual Studio

109

CMyDhtmlDlg dlg; dlg.DoModal( );

4.

Adicione o cdigo a seguir aps a ltima #include Instruo no arquivo de


origem atual:
#include "MyDhtmlDlg.h"

Isso inclui o arquivo.h da classe implementao caixa de dilogo DHTML.


5.

No menu Build, clique em Build Solution.

6.

No menu Debug, clique em Start Without Debugging.

Quando for exibida, caixa de dilogo Abrir a caixa de dilogo DHTML pressionando o
DHTML Dialog boto.
Para obter mais informaes sobre caixas de dilogo DHTML e um exemplo mais
completo, consulte a CDHtmlDialog classe e a DHtmlExplore amostra.
Criando e Consuming um servio da Web XML existente
Ocasionalmente, um aplicativo rich client interage com um servio XML da Web
externo, fornecendo um Rich front-end para um banco de dados existente ou
bancos de dados. O usurio ento possam interagir com os dados de uma
maneira familiarizado ou grfica.
Nesta etapa, voc ir criar um servio da Web XML simples projetado para ser
executado em um servidor Web usando o Microsoft Internet Information Services
(IIS).
Para criar o servio da Web XML
1.

No menu File, clique em New, e clique em Project


A New Project caixa de dilogo ser exibida.

2.

No painel tipos Project, clique em uma Visual Basic Projects ou Visual C#


Projects,. e no painel Modelos, clique no ASP.NET Web Service cone

3.

Na caixa Location, digite http://localhost/MyService.

4.

Clique OK para fechar a caixa de dilogo e criar a soluo.

Uma parte da servios XML da Web comum consiste em verificar cada usurio do
aplicativo. Aps criar a soluo, voc pode implementar um mtodo simples de
validao. Essa rotina de validao deliberadamente simples para ilustrar o
conceito claramente.
Depois que a soluo foi criada, adicionar um mtodo de validao ao Service1.asmx
arquivo de origem. Para fazer isso, clique com o boto direito do mouse a
Service1.asmx.cs superfcie de design e selecione View Code Substituir o HelloWorld
mtodo da Web no final do arquivo com o cdigo a seguir:
' Visual Basic <WebMethod()> Function Validate(ByVal s1 As String, ByVal s2 As String) As Boolean
Return s1 = s2 End Function // C# [WebMethod] public bool Validate(string s1, string s2) { return s1 ==
s2; }

Depois voc modificou o arquivo de origem, Criar a soluo.


Depois que o servio da Web XML existir, voc pode adicionar e configurar uma
referncia da Web com caixa Add Web Reference de dilogo.
Para adicionar uma referncia da Web para o aplicativo do cliente
1.

Abra a MyProject Soluo.

Visual Studio

110

2.

No Solution Explorer, clique com o MyProject projeto e selecione Add Web


Reference.
A Add Web Reference caixa de dilogo ser exibida.

3.

Em Browse to, selecione Web services on the local machine. A mquina


local ser exibido; selecione aquele que voc acabou de criar uma lista de
servios XML da Web existente no (Service1). Se o servio da Web for
encontrado, um descrio do servio ser exibida no painel esquerdo e boto
Add Reference ser ativado. O URL do arquivo.asmx para o servio da Web
tambm deve aparecer na caixa URL da; ele deve aspecto como este:
http://localhost/MyService/Service1.asmx

4.

Clique no Add Reference boto.

Assim que a referncia da Web for adicionada, voc adicionar uma caixa de
dilogo de validao para demonstrar a interao entre o aplicativo e o servio da
Web XML.
Para adicionar uma caixa de dilogo de validao
1.

Clique no modo de exibio de recursos, com o MyProject projeto.

2.

No menu de atalho, clique em Add, e clique em Add Resource

3.

Clique duas vezes no Dialog item.

4.

Clique duas vezes no IDD_DIALOG3 formulrio Caixa de dilogo.


O assistente classe MFC aparece.

5.

Insira os seguintes valores:

Class nameCMyValidateDlg

Base classCDialog

6.

Clique em Finish.

Agora que a caixa dilogo foi criada, adicionar controles para fornecer um servio
de validao para o usurio.
Para validar o usurio
1.

Arraste dois Edit control controles para o IDD_DIALOG3 formulrio Caixa de


dilogo.

2.

Clique com o boto direito do mouse na primeira Edit control.

3.

No menu de atalho, selecione Add Variable.

4.

Na caixa Variable Name, digite m_Name.

5.

No menu Category drop-down, selecione Value.

6.

Clique em Finish.

7.

Clique com o boto direito do mouse no segundo Edit control Controle.

8.

Adicionar outra varivel (chamada m_Password de categoria Value).

9.

Clique duas vezes no OK boto no formulrio Caixa de dilogo.

10. Adicione o seguinte cdigo para a funo do manipulador:


Service1::CService1 *s = new Service1::CService1(); UpdateData(TRUE); bool result = false; s>Validate(CComBSTR(m_Name), CComBSTR(m_Password), &result); if (result)
CDialog::OnOK();

Visual Studio

111

11. Adicione o cdigo a seguir aps a ltima #include Instruo no arquivo de


origem atual:
#include "WebService.h"

Isso inclui o arquivo.h do servio da Web usado por caixa de dilogo de


validao.
Para a rotina de validao para ser eficiente, caixa de dilogo de validao deve ser
o primeiro objeto Interface de usurio seja exibido. Se o usurio inserir o nome
correto e a senha a aplicativo rich client sero exibidos. Ser se um nome incorreto
ou senha for inserida, o usurio atual ser impedido de acessar o aplicativo rich
client.
Para implementar esse comportamento, modifique a InitInstance funo da classe do
aplicativo principal para chamar esta caixa de dilogo primeiro. O aplicativo
continua somente quando a caixa dilogo corretamente sai.
Para exibir a caixa de dilogo de validao inicialmente
1.

No modo de classe, expanda o CMyProjectApp n.

2.

Clique duas vezes a InitInstance funo para editar o corpo funo.

3.

Adicione o seguinte cdigo antes que a chamada para a ShowWindow funo


do objeto pMainFrame:
// Display the validation dialog box first CMyValidateDlg dlg; if (dlg.DoModal() != IDOK) return
FALSE;

4.

Adicione o cdigo a seguir aps a ltima #include Instruo no arquivo de


origem atual:
#include "MyValidateDlg.h"

Isso inclui o arquivo.h da caixa de dilogo de validao.


5.
6.

Compilar uma soluo. No menu Build, clique em Build Solution.


No menu Debug, clique em Start Without Debugging. Na caixa de dilogo
de verificao, inserir o mesmo texto nas caixas de edio Nome e senha, e
clique em OK. O aplicativo rich client ser executada, exibindo sua caixa de
dilogo principal.

Criar um projeto de instalao


A etapa final ao desenvolver seu aplicativo Visual C++ est criando um projeto de
instalao.
Para criar um projeto de instalao
1.
2.

No Explorer Solution, clique com o boto direito do mouse a MyProject


Soluo.
No menu de atalho, clique em Add, e clique em New Project
A New Project caixa de dilogo ser exibida.

3.
4.

No painel tipos Project, selecione Setup and Deployment Projects, e no


painel Modelos, clique no Setup Wizard cone
Digite MySetup o nome do projeto de instalao para e clique em OK.
O Assistente para Instalao ser exibido.

5.

Clique em Next duas vezes.

Visual Studio

112

6.

Selecione os seguintes grupos de sada:

Sada de MyProject principal

Sada de CustomCtl principal

7.

Clique em Next duas vezes.

8.

Clique em Finish

9.

No menu Build, clique em Build MySetup.

O arquivo resultante (MySetup) pode ser copiado para uma mquina de destino
para instalao do aplicativo rich client. Para obter mais informaes sobre projetos
de implantao e o Assistente para instalao, consulte Implantar aplicativos,
Projetos de implantao. e Walkthroughs de implantao

Visual Studio

113

Walkthroughs Application de formulrios


da Web
O objetivo dessas orientaes para mostrar como criar um site da Web usando
pginas da Web e controles ASP.NET. A tabela a seguir lista uma seleo de
orientaes que fornecer uma viso geral dos recursos ASP.NET. Por trabalhar
com essas orientaes, voc aprender sobre a criao de sites, criar e editar
pginas da Web, conectando a fontes de dados, criando um objeto comercial da
camada intermediria, e usar outros recursos ASP.NET para personalizar os sites e
pginas.
Walkthrough

Descrio

Passo-a-passo: Criando uma pgina da


Web bsica no Visual Web Developer

Uma introduo ao criar pginas da Web ASP.NET no


Visual Studio.

Passo-a-passo: Acesso a dados bsico em


pginas da Web

Uma introduo ao exibir dados em uma pgina da Web


usando os controles da fonte de dados e o GridView
controle.

Passo a passo: Ligao de dados em um


objeto corporativo personalizado

Uma introduo ao criar um componente de camada


intermediria que torna dados disponvel para pginas da
Web.

Passo-a-passo: Depurao de Pginas da


Web no Visual Web Developer

Uma introduo ao usar o depurador Visual Studio com


pginas da Web.

Passo-a-passo: Criando e Usando Pginas


Mestras do ASP.NET no Visual Web
Developer

Uma introduo ao usar pginas mestras ASP.NET para


definir um layout geral para pginas da Web.

Passo-a-passo: Personalizando um site


usando temas no Visual Studio

Uma introduo ao definir um aparncia consistente para


suas pginas da Web.

Passo-a-passo: Criando uma pgina do


Web Parts no Visual Web Developer

Uma introduo ao criar uma pgina da Web que usa Partes


da Web para permitir que o usurio para personalizar o
contedo e layout de uma pgina.

Passo a passo: Criando um site com


associao e logon de usurio (Visual
Studio)

Uma introduo a adicionar segurana logon em um site da


Web.

Passo a passo: Criando e usando um


servio da Web do ASP.NET no Visual
Web Developer

Uma introduo ao criar um servio da Web ASP.NET e


consumindo-lo de uma pgina da Web.

Visual Studio

114

Explicao Passo a Passo: Criando uma


Pgina Web Bsica no Visual Web
Developer
Esta explicao passo a passo fornece uma introduo ao Microsoft Visual Web
Developer. Ela orienta voc atravs da criao de uma pgina simples usando o
Visual Web Developer, ilustrando as tcnicas bsicas de criao de uma nova
pgina, adicionando controles e escrevendo cdigo.
As tarefas ilustradas nesta explicao passo a passo incluem:

Criar um site Web do sistema de arquivos.

Familiarizando-se com o Visual Web Developer.

Criando uma pgina ASP.NET Single-File no Visual Web Developer.

Adicionar controles.

Adicionar manipuladores de eventos.

Executar pginas com o Servidores Web em Visual Web Developer.


Pr-requisitos

Para concluir esta explicao passo a passo, ser necessrio:

Visual Web Developer

O .NET Framework
Criando um Site e Pgina Web

Nesta parte da explicao passo a passo, voc criar um site Web e adicionar uma
nova pgina a ele. Voc tambm adicionar um texto HTML e executar a pgina
no seu navegador Web.
Para esta explicao passo a passo, voc criar um site Web do sistema de
arquivos que no requer que voc trabalhe com o Internet Information Services
(IIS) da Microsoft. Em vez disso, voc criar e executar sua pgina no sistema de
arquivos local.
Um sistema de arquivos do site Web um sistema que armazena pginas e outros
arquivos em uma pasta que voc escolhe em algum lugar em seu computador local.
Outras opes de site Web incluem um site Web do IIS local, que armazena seus
arquivos em uma subpasta da raiz do IIS local (normalmente, \Inetpub\Wwwroot\).
Um site FTP armazena arquivos em um servidor remoto que voc acessa atravs da
Internet, usando o File Transfer Protocol (FTP). Um site remoto armazena arquivos
em um servidor remoto que voc pode acessar atravs de uma rede local. Para
mais informaes, consulte Explicao Passo a Passo: Editando Sites Web com FTP
no Visual Web Developer. Alm disso, os arquivos do site Web podem ser
armazenados em um sistema de controle de origem como o Visual SourceSafe.
Para mais informaes, consulte Introduo ao Controle de Origem.
Para criar um site Web do sistema de arquivos
1.

Abra o Visual Web Developer.

2.

No menu File, aponte para New, e em seguida, clique em Web site


A caixa de dilogo New Web Site aparece como mostrado na screen shot a
seguir.

Visual Studio

115

Caixa de dilogo New Web Site

3.

No Visual Studio installed templates, clique em ASP.NET Web Site.


Quando voc cria um site Web, voc especifica um modelo. Cada modelo cria
um aplicativo Web que contm arquivos e pastas diferentes. Nesta explicao
passo a passo, voc est criando um site Web baseado no modelo ASP.NET
Web Site, que cria algumas pastas e alguns arquivos padro.

4.

Na caixa Location, selecione a caixa File System e seguida, digite o nome


da pasta onde voc deseja manter as pginas do seu site Web.
Por exemplo, digite o nome da pasta C:\BasicWebSite.

5.

Na lista Language, clique em Visual Basic ou Visual C#.


A linguagem de programao que voc escolher ser o padro para seu site
Web. Entretanto, voc pode usar vrios idiomas no mesmo aplicativo Web,
criando pginas e componentes em linguagens de programao diferentes

6.

Clique em OK.
O Visual Web Developer cria a pasta e uma nova pgina chamada
Default.aspx. Quando uma nova pgina criada, por padro, o Visual Web
Developer exibe a pgina no modo Source, onde voc pode ver os elementos
HTML da pgina. O screen shot a seguir mostra o modo Source de uma
pgina Web padro.
Modo Source de uma pgina padro

Um Tour do Visual Web Developer


Antes de voc prosseguir trabalhando na pgina, til voc se familiarizar com o
ambiente de desenvolvimento do Visual Web Developer. A ilustrao a seguir
mostra as janelas e ferramentas que esto disponveis no Visual Web Developer.
Diagrama do ambiente Visual Web Developer

Para se familiarizar com o designer da Web em Visual Web Developer

Examinar a ilustrao anterior e corresponder o texto para a lista a seguir,


que descreve as janelas e ferramentas mais comumente usadas. (Nem todas as
janelas e ferramentas que voc v so listadas aqui, somente as marcadas na
ilustrao anterior.)

Barras de ferramentas. Fornecem comandos de formatao de texto,


localizao de texto, e assim por diante. Algumas barras de ferramentas fico
disponveis somente quando voc est trabalhando em modo Design.

Solution Explorer. Exibe os arquivos e pastas em seu site Web.

Janela de Documento. Exibem os documentos com os quais voc est


trabalhando em janelas com guias. Voc pode alternar entre documentos
clicando nas guias.

Janela de Propriedades. Permite que voc altere as configuraes da


pgina, dos elementos HTML, dos controles e de outros objetos.

Visual Studio

116

Guias de Exibio. Mostra diferentes modos de exibio do mesmo


documento. Modo Design uma superfcie de edio prxima ao WYSIWYG.
Modo Source o editor HTML para a pgina. Voc trabalhar com esses modos
posteriormente nesta explicao passo a passo. Se voc preferir abrir as pginas
Web em modo Design, no menu Tools, clique em Options, selecione o n
HTML Designer e altere a opo Start Pages In.

Caixa de Ferramentas. Fornece controles e elementos HTML que voc


pode arrastar para a sua pgina. Os elementos da caixa de ferramentas so
agrupados por funo em comum.

Server Explorer/Database Explorer. Exibe conexes de banco de


dados. Se o Server Explorer no estiver visvel no Visual Web Developer, no
menu View, clique em Other Windows, e clique em Server Explorer.
Observao
Voc pode reorganizar e redimensionar as janelas para atender suas preferncias. O menu View permite
exibir janelas adicionais.

Criando uma Nova Pgina Web Forms


Quando voc cria um novo site Web, o Visual Web Developer adiciona uma pgina
do ASP.NET (pgina Web Forms) chamada Default.aspx. Voc pode usar a pgina
Default.aspx como a home page para o seu site Web. Entretanto, para esta
explicao passo a passo, voc ir criar e trabalhar com uma nova pgina.
Para adicionar uma pgina ao site Web
1.

Feche a pgina Default.aspx. Para fazer isso, clique com o boto direito do
mouse na guia que contm o nome de arquivo e selecione Close.

2.

Na Solution Explorer, clique com o boto direito do mouse o site Web (por
exemplo, C:\BasicWebSite), e clique em Add New Item.

3.

No Visual Studio installed templates, clique em Web Form.

4.

Na caixa Name, digite FirstWebPage.

5.

Na lista Language, escolha a linguagem de programao que voc prefere


usar (Visual Basic, C#, ou J#).
Quando voc cria o site Web, voc especifica uma linguagem padro.
Entretanto, sempre que voc cria um nova pgina ou um componente para o
seu site Web, voc pode alterar a linguagem. Voc pode usar linguagens de
programao diferentes no mesmo site Web.

6.

Desmarque a caixa de seleo Place code in separate file. A screen shot a


seguir mostra a caixa de dilogo Add New Item.
Caixa de Dilogo Add New Item

Nesta explicao passo a passo, voc est criando uma pgina single-file com
o cdigo e HTML na mesma pgina. O cdigo para pginas do ASP.NET pode
ser localizado na pgina ou em um arquivo de classe separado. Para saber
mais sobre como manter o cdigo em um arquivo separado, consulte
Explicao Passo a Passo: Criando uma Pgina Web Bsica com Separao de
Cdigo no Visual Web Developer.

Visual Studio

117

7.

Clique em Add.
O Visual Web Developer cria a nova pgina e a abre no modo Source.

Adicionando HTML pgina


Nesta parte da explicao passo a passo, voc ir adicionar algum texto esttico
para a pgina.
Para adicionar texto para a pgina
1.

Na parte inferior da janela de documento, clique na guia Design para


alternar para o modo Design.
O modo Design exibe a pgina com a qual voc est trabalhando de uma
maneira WYSIWYG. Nesse ponto, voc no tem qualquer texto ou controles
na pgina; ento, a pgina est em branco.

2.

Na pgina, digite Bem-vindo ao Visual Web Developer.


A screen shot a seguir mostra o texto que voc digitou no modo Design.
O texto de boas vindas como visto no modo Design

3.

Alterne para modo Source.


Voc pode ver o HTML que voc criou, digitando no modo Design, como
mostrado na seguinte screen shot.
O texto de boas vindas como visto no modo Source

Executando a Pgina
Antes de prosseguir com a adio de controles para a pgina, voc pode tentar
execut-la. Para executar uma pgina, necessrio um servidor Web. Em um site
Web de produo, voc usa o IIS como seu servidor Web. Entretanto, para testar
uma pgina, voc pode usar o Servidor de Desenvolvimento do ASP.NET, que
executado localmente e no requer o IIS. Para os sites Web do sistema de
arquivos, o servidor Web padro no Visual Web Developer o Servidor de
Desenvolvimento do ASP.NET.
Para executar a pgina
1.

Pressione CTRL+F5 para executar a pgina.


O Visual Web Developer inicia o Servidor de Desenvolvimento do ASP.NET.
Um cone aparece na barra de ferramentas para indicar que o servidor Web
Visual Web Developer est sendo executado, como mostrado na seguinte
screen shot.
cone do Servidor Visual Web Developer

A pgina exibida no navegador. Embora a pgina que voc criou tenha uma
extenso .aspx, ela atualmente executa como qualquer pgina HTML.
Observao

Visual Studio

118

Se o navegador exibe um erro 502 ou um erro indicando que a pgina no pode ser exibida, voc deve
configurar seu navegador para ignorar os servidores proxy para solicitaes locais. Para obter detalhes,
consulte COMO: Ignorar um Servidor proxy para Solicitaes Web Locais.
2.

Feche o navegador.

Adicionando e Programao Controles


Nesta parte da explicao, voc ir adicionar os controles Button, TextBox e Label
para a pgina e gravar o cdigo para manipular o evento Click para o controle
Button.
Agora voc ir adicionar os controles do servidor na pgina. Os controles do
servidor, que incluem botes, rtulos, caixas de texto e outros controles familiares,
fornecem capacidades tpicas para processamento de formulrios para suas pginas
Web do ASP.NET. Entretanto, voc pode programar os controles com cdigo que
executado no servidor, no no cliente.
Para adicionar controles para a pgina
1.

Clique na guia Design para alternar para modo Design.

2.

Pressione SHIFT+ENTER algumas vezes para criar um pouco de espao.

3.

No TextBox, a partir do grupo Standard, arraste trs controles para a


pgina: um controle Label, um controle Toolbox e um controle Label.

4.

Coloque o ponto de insero acima do controle TextBox e em seguida, digite


Entre com o seu nome:.
Esse texto HTML esttico a legenda do controle TextBox. Voc pode
misturar HTML esttico e controles de servidor na mesma pgina. O screen
shot a seguir mostra como os trs controles aparecem no modo Design.
Controles no Modo de Exibio Design

Definindo as Propriedades do Controle


O Visual Web Developer oferece vrias maneiras para definir as propriedades dos
controles na pgina. Nesta parte da explicao passo a passo, voc ir definir as
propriedades em modo Design e em modo Source.
Para definir as propriedades de controle
1.

Selecione o controle Button e na janela Properties, defina Text para


Display Name, conforme mostrado na screen shot a seguir.
Texto do Controle Button Alterado

2.

Alterne para modo Source.


O modo de exibio Source exibe o HTML para a pgina, incluindo os
elementos que o Visual Web Developer criou para os controles do servidor. Os
controles so declarados usando sintaxe do tipo HTML, exceto as marcas que
usam o prefixo asp: e incluem o atributo runat="server".
As propriedades do controle so declaradas como atributos. Por exemplo,
quando voc define a propriedade Text para o controle Button, na etapa 1,
voc realmente definiu o atributo Text na marcao do controle.

Visual Studio

119

Observe que todos os controles esto dentro de um elemento <form> que


tambm tem o atributo runat="server". O atributo runat="server" e o
prefixo asp: para controle de marcas marcam os controles para que eles
sejam processados pelo ASP.NET no lado do servidor quando a pgina
executada. Cdigo fora dos elementos <form runat="server"> e <script
runat="server"> interpretado pelo navegador como cdigo do cliente.
3.

Coloque o ponto de insero em um espao dentro da guia <asp:label>, e


pressione SPACEBAR.
Uma lista suspensa aparece para mostrar a lista de propriedades que voc
pode definir para o controle Label. Esse recurso, conhecido como
IntelliSense, ajuda voc no modo Source com a sintaxe dos controles de
servidor, elementos HTML e outros itens na pgina. A screen shot a seguir
mostra a lista suspensa do IntelliSense para o controle Label.
O IntelliSense para o controle Label

4.

Selecione ForeColor e digite um sinal de igualdade (=). O IntelliSense exibe


uma lista de cores.
Observao
Voc pode exibir uma lista suspensa do IntelliSense a qualquer momento, pressionando CTRL+J.

5.

Selecione uma cor para o texto do controle Label.


O atributo ForeColor concludo com a cor que voc selecionou.

Programando o Controle Button


Para esta explicao passo a passo, voc ir escrever um cdigo que l o nome que
o usurio insere na caixa de texto e exibe o nome no controle Label.
Para adicionar um manipulador de eventos padro para o controle button
1.

Alternar para o modo Design.

2.

Clique duas vezes no controle Button.


O Visual Web Developer alterna para o modo Source e cria um esqueleto de
manipulador de eventos para o evento padro do controle Button, o evento
Click.
Observao
Clicar duas vezes em um controle em modo Design apenas uma das vrias maneiras para voc poder
criar os manipuladores de eventos.

3.

Dentro do manipulador, digite o seguinte:


Label1.
O Visual Web Developer exibir uma lista dos membros disponveis para o
controle Label, conforme mostrado a screen shot a seguir.
Membros disponveis do controle Label

Visual Studio

120

4.

Concluir o manipulador de evento Click para o boto para que ele aparea
como mostrado no exemplo de cdigo a seguir.
C#
protected void Button1_Click(object sender, System.EventArgs e) { Label1.Text = TextBox1.Text +
", welcome to Visual Web Developer!"; }

5.

Role para baixo at o elemento <asp:Button>. Observe que o elemento


<asp:Button> agora tem o atributo OnClick="Button1_Click". Este
atributo vincula o evento Click do boto para o mtodo do manipulador que
voc codificou na etapa 4.
Os mtodos do manipulador de eventos podem ter qualquer nome; o nome
que voc v o nome padro criado pelo Visual Web Developer. O ponto
importante que o nome usado para o atributo OnClick deve corresponder
ao nome de um mtodo na pgina.
Observao
Se voc estiver usando o Visual Basic com separao de cdigo, o Visual Web Developer no
adiciona um atributo OnClick explcito. Em vez disso, o evento acoplado ao mtodo do
manipulador usando uma palavra-chave Handles na prpria declarao do manipulador.

Executando a Pgina
Agora voc pode testar os controles do servidor na pgina.
Para executar a pgina
1.

Pressione CTRL+F5 para executar a pgina no navegador.


A pgina novamente executa usando o Servidor de Desenvolvimento do
ASP.NET.

2.

Digite um nome para a caixa de texto e clique o boto.


O nome que voc inseriu exibido no controle Label. Observe que quando
voc clica no boto, a pgina remetida para o servidor Web. O ASP.NET
recria a pgina, executa o seu cdigo (neste caso, executa o manipulador de
eventos Click do controle Button), e em seguida, envia a nova pgina para o
navegador. Se voc observar a barra de status do navegador, voc pode ver
que a pgina est fazendo uma chamadapara o servidor Web sempre que
voc clicar no boto.

3.

No navegador, exiba o fonte da pgina que voc estiver executando.


No cdigo fonte da pgina, voc v somente HTML comum; voc no v os
elementos <asp:> com os quais voc estava trabalhando no modo Source.
Quando a pgina executada, o ASP.NET processa os controles do servidor e
processa os elementos HTML da pgina que executa as funes que
representam o controle. Por exemplo, o controle <asp:Button> processado
como o elemento HTML <input type="submit">.

4.

Feche o navegador.

Trabalhando com Controles Adicionais

Visual Studio

121

Nesta parte da explicao , voc trabalhar com o controle Calendar, que exibe as
datas de um ms ao mesmo tempo. O controle Calendar um controle mais
complexo que o boto, a caixa de texto e o rtulo com os quais voc tem
trabalhado e ilustra alguns recursos adicionais dos controles do servidor.
Nesta seo, voc adicionar um controle Calendar na pgina e o formatar.
Para adicionar um controle Calendar
1.
2.

Em Visual Web Developer, alterne para modo Design.


A partir da seo Standard do Toolbox, arraste um controle Calendar para
a pgina:
O painel de marca inteligente do calendrio exibido. O painel exibe
comandos que facilitam a execuo das tarefas mais comuns para o controle
selecionado. A screen shot a seguir mostra o controle Calendar como
processado no modo Design.
Controle Calender no modo Design

3.

No painel de marca inteligente, escolha Auto Format.


A caixa de dilogo Auto Format exibida, permitindo que voc selecione um
esquema de formatao para o calendrio. A screen shot a seguir mostra a
caixa de dilogo Auto Format para o controle Calendar.
Caixa de Dilogo Auto Format para o controle Calendar

4.

Na lista Select a scheme, selecione Simple e em seguida, clique em OK

5.

Alterne para modo Source.


Voc pode ver o elemento <asp:Calendar>. Este elemento muito maior
que os elementos para os controles simples que voc criou anteriormente. Ele
tambm inclui subelementos, como <WeekEndDayStyle>, que representam
vrias configuraes de formatao. A screen shot a seguir mostra o controle
Calendar no modo Source.
Controle Calendar em modo Source

Programando o Controle Calendar


Nesta seo, voc programar o controle Calendar para exibir a data selecionada
atualmente.
Para programar o controle Calendar
1.

A partir da lista suspensa da esquerda no topo do modo Source, selecione


Calendar1.
A lista suspensa exibe uma lista de todos os objetos para os quais voc pode
escrever cdigo.

2.

A partir da lista suspensa da direita, selecione SelectionChanged.


O Visual Web Developer cria um esqueleto de manipulador de eventos para o
evento SelectionChanged do controle Calendar.

Visual Studio

122

Agora voc j viu duas maneiras para criar um manipulador de eventos para
controles. O primeiro foi clicar duas vezes o controle no modo Design. O
segundo usar as listas suspensas em modo Source para selecionar um
objeto e o evento para o qual escrever o cdigo.
3.

Concluir o manipulador de evento SelectionChanged com o seguinte cdigo


destacado.
C#
protected void Calendar1_SelectionChanged(object sender, System.EventArgs e) { Label1.Text =
Calendar1.SelectedDate.ToString(); }

Executando a Pgina
Agora voc pode testar o calendrio.
Para executar a pgina
1.

Pressione CTRL+F5 para executar a pgina no navegador.

2.

Clique em uma data no calendrio.


A data que voc clicou exibida no controle Label.

3.

No navegador, exibir o cdigo fonte para a pgina.


Observe que o controle Calendar tem sido processado para a pgina como
uma tabela, com cada dia como um elemento <td> contendo um elemento
<a>.

4.

Feche o navegador.

Prximas Etapas
Esta explicao ilustra os recursos bsicos do designer da pgina do Visual Web
Developer. Agora que voc entende como criar e editar uma pgina Web no Visual
Web Developer, voc pode querer explorar outros recursos. Por exemplo, voc
pode querer:

Aprender mais sobre como editar HTML no Visual Web Developer. Para obter
detalhes, consulte Explicao Passo a Passo: Edio de HTML Bsica no Visual
Web Developer.

Adicionar acesso de dados para as pginas Web. Para obter detalhes,


consulte Explicao Passo a Passo: Acesso de Dados Bsicos em Pginas Web.

Aprenda sobre o depurador para pginas da Web. Para obter detalhes,


consulte Explicao Passo a Passo: depurao de pginas Web no Visual Web
Developer.

Criar pginas Web que so especificamente projetadas para telefones


celulares e outros dispositivos. Para obter detalhes, consulte Explicao Passo a
Passo: Criando Pginas Web para Dispositivos Mveis.

Criar um layout de site consistente usando pginas mestra. Para obter


detalhes, consulte Explicao Passo a Passo: Criando e Usando Pginas Mestra
do ASP.NET em Visual Web Developer.

Adicionar navegao ao seu site para que os usurios possam facilmente se


mover entre as pginas. Para obter detalhes, consulte Explicao Passo a Passo:
Adicionando Navegao de Site para um Site Web.

Visual Studio

123

Passo-a-passo: Acesso a Dados Bsico


em Pginas da Web
Este passo-a-passo mostra como como criar uma pgina simples com dados
vinculados usando controles que so especialmente criados para acesso a dados.
Durante este passo-a-passo, voc aprender a fazer o seguinte:

Conectar-se a um banco de dados do Microsoft SQL Server na ferramenta de


desenvolvimento da web, o Microsoft Visual Web Developer.

Usar edio arrastar-e-soltar para criar elementos de acesso a dados que


podem ser usados na pgina sem cdigo.

Usar o controle SqlDataSource para gerenciar o acesso a dados e vinculao.

Exibir dados com o controle GridView.

Configurar o controle GridView para permitir a classificao e paginao.

Criar uma consulta filtrada que exibe somente registros selecionados.


Pr-requisitos

Para concluir este passo-a-passo, ser necessrio o seguinte:


Acesso ao o banco de dados SQL Server Northwind.

Se o banco de dados Northwind no estiver no mesmo computador do


servidor web, voc deve ter um nome de usurio e senha para uma conta de
usurio do SQL Server que tenha acesso ao banco de dados Northwind
Observao
Se voc precisar de informaes sobre como efetuar login no SQL Server, contate o administrador do
servidor.
Microsoft Data Access Components (MDAC) verso 2.7 ou posterior.

Se voc estiver usando o Microsoft Windows XP ou Windows Server 2003, voc


j tem MDAC 2.7. Entretanto, se voc estiver usando o Microsoft Windows 2000,
voc pode atualizar o MDAC que j est instalado no o computador. Para fazer o
download da verso atual do MDAC, consulte Centro de Desenvolvimento de
Acesso e Armazenamento de Dados.
Criando o site da web
Se voc j criou um site no Visual Web Developer completando o Passo-a-passo:
Criando uma Pgina da Web Bsica no Visual Web Developer, voc pode usar esse
site e ir para a prxima seo. Caso contrrio, crie um novo site e pgina seguindo
estas etapas.
Para criar um site do sistema de arquivos
1.

Abra o Visual Web Developer.

2.

No menu File, clique em New Web Site.


A caixa de dilogo New Web Site aparece.

3.

Em Visual Studio installed templates, clique em ASP.NET Web Site.

Visual Studio

124

4.

Na caixa Location mais a direita, insira o nome da pasta onde voc deseja
manter as pginas do site
Por exemplo, digite o nome de pasta C:\WebSites.

5.
6.

Na lista Language, clique na linguagem de programao que preferir


trabalhar.
Clique em OK.
O Visual Web Developer cria a pasta e uma nova pgina chamada
Default.aspx.

Adicionando um Controle GridView para Exibir Dados


Para exibir dados em um pgina da web do ASP.NET, necessrio o seguinte:
Uma conexo com uma fonte de dados (como um banco de dados).

No procedimento a seguir, voc criar uma conexo com o banco de dados SQL
Server Northwind.

Um controle da fonte de dados na pgina, que executa consultas e gerencia


os resultados de consultas.
Um controle na pgina para exibir os dados realmente.

No seguinte procedimento, voc ir exibir dados em um controle GridView. O


controle GridView receber seus dados a partir do controle SqlDataSource.
Voc pode adicionar esses elementos para o site separadamente. No entanto,
mais fcil comear a visualizando a exibio de dados usando o controleGridView,
e usando assistentes para criar a conexo e o controle da fonte de dados. O
procedimento a seguir explica como criar todos os trs elementos que voc deve
ter para exibir dados na pgina.
Para adicionar e configurar um controle GridView para exibir dados
1.

No Visual Web Developer, alterne para o modo de exibio Design.

2.

Da pasta Data em Toolbox, arraste um controle GridView para a pgina.

3.

Se o o menu de atalho GridView Tasks no for exibido, clique com o boto


direito do mouse no controle GridView e clique em Show Smart Tag.

4.

No menu GridView Tasks, em Choose Data Source list, clique em <New


data source>.
A caixa de dilogo Data Source Configuration aparece.

Visual Studio

125

5.

Clique em Database.
Isso especifica que voc deseja obter dados de um banco de dados que
suporte instrues SQL. Isso inclui o SQL Server e outros OLE-DB bancos de
dados compatveis.
Na caixa Specify an ID for the data source, um nome controle da fonte de
dados padro aparece (SqlDataSource1). Voc pode deixar esse nome.

6.

Clique em OK.
O Wizard Configure Data Source aparecer, exibindo uma pgina na qual voc
pode escolher uma conexo.

Visual Studio

126

7.
8.

Clique em New Connection.


Na caixa de dilogo Choose Data Source, em Data source, clique em
Microsoft SQL Server e clique emContinue.
A caixa de dilogo Add Connection aparece.

9.

Na caixa Server name , digite o nome do SQL Server que voc deseja usar.

Visual Studio

127

10. Para as credenciais de login, selecione a opo que seja apropriada para
acessar o banco de dados do SQL Server (segurana integrada ou ID
especfico e senha) e se for necessrio, digite um nome de usurio e senha.
11. Clique em Select or enter a database name, e digite Northwind.
12. Clique em Test connection e, quando voc tiver certeza que ele funciona,
clique em OK.
O assistente Configure Data Source - <DataSourceName> aparece e as
informaes de conexo so preenchido.
13. Clique em Next.
O assistente aparecer, exibindo uma pgina onde voc pode escolher
armazenar a seqncia de conexo no arquivo de configurao. Armazenar a
seqncia de conexo no arquivo de configurao tem duas vantagens:
1.
2.

mais seguro do que armazenar a seqncia de conexo na pgina.


Voc pode reutilizar a mesma seqncia de conexo em vrias
pginas.

14. Certifique-se de que a caixa de seleo Yes, save this connection as


esteja selecionada, e clique em Next. (Voc pode deixar o nome de seqncia
de conexo padro NorthwindConnectionString.)

Visual Studio

128

O assistente aparecer, exibindo uma pgina na qual voc pode especificar os


dados que voc deseja buscar do banco de dados.
15. Em Specify columns from a table or view, na lista Name, clique em
Customers.
16. Em Columns, selecione o CustomerID, CompanyName e City check
boxes.
O assistente aparecer, exibindo a Instruo SQL que voc est criando em
uma caixa na parte inferior da pgina.

Observao
O assistente permite que voc especifique critrios de seleo (uma clusula WHERE) e outras opes de
consulta SQL. Para esta parte do passo-a-passo, voc vai criar uma declarao simples sem seleo ou
opes de classificao.
17. Clique em Next.
18. Clique em Test Query para certificar-se que est buscando os dados que
voc deseja.
19. Clique em Finish.
O assitente fecha e voc retornado para a pgina. Executar o assistente
realizou duas tarefas:
o

O assistente criou e configurou um controle SqlDataSource (chamado


SqlDataSource1), que incorpora as informaes de conexo e consulta que
voc especificou.

Visual Studio

129

O assistente acoplou o controle GridView para o SqlDataSource.


Portanto, o controle GridView exibir dados que so retornados pelo controle
SqlDataSource.
Se voc exibir as propriedades para o controle SqlDataSource, voc ver
que o assistente criou valores para as propriedades ConnectionString e
SelectQuery.
Observao
Voc pode facilmente alterar o aspecto do controle GridView. No modo de exibio Design, clique com
o boto direito do mouse no controle GridView e clique emShow Smart Tag. No menu GridView
Tasks, clique em Auto Format e aplique um esquema.

Testando a pgina
Agora voc pode executar a pgina.
Para testar a pgina
1.

Pressione CTRL+F5 para executar a pgina.


A pgina aparece no navegador. O controle GridView exibe todas as linhas
de dados da tabela Customers.

2.

Feche o navegador.

Adicionando Classificao e Paginao


Voc pode adicionar classificao e paginao no controle GridView sem escrever
nenhum cdigo.
Para adicionar classificao e paginao
1.
2.

No modo de exibio Design, clique com o boto direito do mouse no


controle GridView e clique em Show Smart Tag.
No menu de atalho GridView Tasks, selecione Enable Sorting check box.
Os ttulos de colunas no controle GridView alteram para vnculos.

3.

No menu GridView Tasks, selecione Enable Paging check box.


Um rodap adicionado ao controle GridView com links de nmero pgina.

4.
5.

Opcionalmente, use Properties para alterar o valor da propriedade


PageSize de 10 para um tamanho de pgina menor.
Pressione CTRL+F5 para executar a pgina.
Ser possvel clicar em uma coluna ttulo para classificar pelos contedos
dessa coluna. Se h mais registros na fonte de dados do que o tamanho da
pgina, do controle GridView, voc poder usar os links de navegao de
pgina na parte inferior do controle GridView para mover entre pginas.

6.

Feche o navegador.

Adicionando filtragem
Com freqncia voc deseja exibir somente dados selecionados na pgina. Nesta
parte do passo-a-passo, voc modificar a consulta para o controle SqlDataSource
para que os usurios possam selecionar registros de clientes para uma cidade
especfica.

Visual Studio

130

Primeiro, voc usar um controle TextBox para criar um caixa de texto na qual os
usurios podero digitar o nome de uma cidade. Em seguida, alterar a consulta
para incluir um filtro parametrizado (clusula WHERE). Como parte desse processo,
voc criar um elemento de parmetro para o controle SqlDataSource. O
elemento de parmetro estabelece como o controle SqlDataSource obter o valor
para sua consulta com parametrizada nomeada, da caixa de texto.
Quando voc tiver terminado com essa parte do passo-a-passo, a pgina ser
semelhante a este procedimento no modo de exibio Design.

Para adicionar a caixa de texto para especificar uma cidade


1.

A partir do grupo Standard em Toolbox, arraste um controle TextBox e


um controle Button para a pgina.
O controle Button usado somente para enviar a pgina para o servidor.
Voc no precisar escrever qualquer cdigo para ele.

2.

Em Propriedades, para o controle TextBox, definida ID como textCity.

3.

Se voc desejar, digite City ou texto semelhante antes da caixa de texto


atuar como uma legenda.

4.

Em Properties para o controle Button, definida Text como Submit.

Agora voc pode modificar a consulta para incluir um filtro.


Para modificar a consulta com um filtro parametrizados
1.
2.

Clique com o boto direito do mouse no controle SqlDataSource e clique em


Show Smart Tag.
No menu SqlDataSource Tasks, clique em Configure Data Source.
O assistente Configure Data Source - <Datasourcename> aparece.

3.

Clique em Next.
O assistente exibe o comando SQL que est atualmente configurado para o
controle SqlDataSource.

Visual Studio

131

4.

Clique em WHERE.
Aparecer a pgina Add WHERE Clause.

5.

Na lista Column, clique em City.

6.

Na lista Operator, clique em =.

7.

Na lista Source, clique em Control.

8.

Em Parameter properties, na lista Control ID, clique em textCity.

As cinco etapas anteriores especificam que a consulta obter o valor de


pesquisa para City a partir do controle TextBox adicionado mo procedimento
anterior.
9.

Clique em Add.
A clusula WHERE que voc criou aparecer em uma caixa na parte inferior
da pgina.

10. Clique em OK para fechar a pgina Add WHERE Clause.


11. No assistente Configure Data Source - <DataSourceName>, clique em
Next.
12. Na pgina Test Query, clique em Test Query.
O assistente aparecer, exibindo a pgina Parameter Values Editor, que
solicita a voc um valor para usar na clusula WHERE.
13. Na caixa Value, digite London e clique em OK.
Os registros de clientes de London aparecem.
14. Clique em Finish para fechar o assistente.
Agora voc pode testar a filtragem.

Visual Studio

132

Para testar a filtragem


1.

Pressione CTRL+F5 para executar a pgina.

2.

Na o caixa de texto, digite London, e clique em Submit.


Uma lista de clientes da City of London aparecer no controle GridView.

3.

Tente outras cidades, como Buenos Aires e Berlin.

Prximas etapas
Acesso a dados uma parte importante em vrios aplicativos da web, este passoa-passo forneceu somente uma amostra do que voc pode fazer com dados em
pginas da web. Voc pode testar outros recursos adicionais do acesso a dados. Por
exemplo, convm fazer o seguinte:

Trabalhar com o Microsoft Access em vez do SQL Server (Voc no pode usar
dependncia de cache SQL com o Access).
Para obter informaes detalhadas, consulte Passo-a-passo: Criando uma Pgina
da Web para Exibir Dados de Banco de Dados do Access.

Editar e inserir registros.


Para obter informaes detalhadas, consulte Passo-a-passo: Editando e
Inserindo Dados em Pginas da Web com o Controle DetailsView Web Server..

Trabalhar com registros que tenham um relacionamento master-detail.


Para obter informaes detalhadas, consulte Passo-a-passo: Criando Pginas da
Web Master/Detail no Visual Studio.

Criar um componente middle-tier (comercial) que executa acesso a dados, e


o usa como fonte de dados em uma pgina.
Para obter informaes detalhadas, consulte Passo-a-passo: Vinculao de
Dados para um Objeto Business Personalizado.

Visual Studio

133

Passo-a-passo: Ligao de dados para


um objeto corporativo personalizado
Muitos aplicativos da Web so criados usando vrias camadas, com um ou mais
componentes contidos na camada no meio para fornecer acesso a dados. O
Microsoft Visual Web Developer inclui um assistente que ajuda voc a criar um
componente de dados que voc pode usar como um objeto de dados de camada do
meio, conforme descrito em Passo-a-passo: Ligao de dados de pginas da Web
com um componente de dados do Visual Studio.
Entretanto, voc tambm pode desejar criar um objeto corporativo personalizado,
em vez contar com o componente de dados criado pelo o assistente. Criar um
objeto corporativo personalizado permite que voc implemente suas prprias
lgicas corporativa. Esta explicao passo a passo ilustra como criar um objeto
corporativo bsico que voc pode usar como uma fonte de dados para pginas da
Web do ASP.NET.
Durante esta explicao passo a passo, voc aprender como:

Criar um componente que pode retornar dados para um pgina da Web. O


componente usa um arquivo XML para seus dados.

Fazer referncia a objeto corporativo como uma fonte de dados em uma


pgina da Web.

Acoplar um controle para os dados retornados pelo objeto corporativo.

Ler e gravar dados, usando o objeto corporativo.


Pr-requisitos

Para concluir esta explicao passo a passo, ser necessrio:

Visual Web Developer (Visual Studio).

O .NET Framework.

Esta explicao passo a passo presume que voc tenha uma compreenso geral de
como usar o Visual Web Developer.
Criando o site da Web
Se j tiver criado um site no Visual Web Developer (por exemplo, seguindo as
etapas no Passo-a-passo: Criando uma pgina da Web bsica em Visual Web
Developer), voc pode usar esse site e v para a prxima seo, "Criando um
arquivo XML para dados Corporativos." Caso contrrio, crie um novo site e pgina
seguindo estas etapas.
Para criar um site do sistema de arquivos
1.

Abra o Visual Web Developer.

2.

No menu File, clique em New Web Site.


A caixa de dilogo New Web Site aparece.

3.
4.

Em Visual Studio installed templates, clique em ASP.NET Web Site.


Na caixa Location, insira o nome da pasta onde voc deseja manter as
pginas do seu site.
Por exemplo, digite o C:\WebSites nome da pasta.

Visual Studio

134

5.
6.

Na lista Language, clique na linguagem de programao que voc preferir


trabalhar.
Clique em OK.
O Visual Web Developer cria a pasta e uma nova pgina chamada
Default.aspx.

Criando um arquivo XML para dados corporativos


No procedimento a seguir, voc criar um arquivo XML simples para os dados de
componentes Business.
Para criar o arquivo XML
1.

No Solution Explorer, clique com o boto direito do mouse App_Data, e


ento clique em Add New Item.
Observao
Certifique-se de que voc criou o arquivo XML na pasta App_Data. A pasta App_Data tem as
permisses definidas sobre ela que permitir que a pgina da Web leia e grave dados para o arquivo
XML.

2.

Em Visual Studio installed templates, clique em XML file.

3.

Na caixa Name, digite Authors.xml.

4.

Clique em Add.
Um novo arquivo XML criado que contm somente a diretiva XML.

5.

Copie os seguintes dados XML, e cole-o para o arquivo, sobrescrevendo o


que j estiver no arquivo.
O arquivo XML inclui informaes de esquema que identifica a estrutura do
banco de dados dos dados, incluindo uma restrio de chave primria para a
chave.
Observao
Componentes Business podem trabalhar com dados em qualquer forma que seja adequada para seu
aplicativo. Esta explicao passo a passo usa um arquivo XML.
<?xml version="1.0" standalone="yes"?> <dsPubs xmlns="http://www.tempuri.org/dsPubs.xsd">
<xs:schema id="dsPubs" targetNamespace="http://www.tempuri.org/dsPubs.xsd"
xmlns:mstns="http://www.tempuri.org/dsPubs.xsd"
xmlns="http://www.tempuri.org/dsPubs.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified"
elementFormDefault="qualified"> <xs:element name="dsPubs" msdata:IsDataSet="true">
<xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element
name="authors"> <xs:complexType> <xs:sequence> <xs:element name="au_id" type="xs:string"
/> <xs:element name="au_lname" type="xs:string" /> <xs:element name="au_fname"
type="xs:string" /> <xs:element name="au_phone" type="xs:string" /> </xs:sequence>
</xs:complexType> </xs:element> </xs:choice> </xs:complexType> <xs:unique
name="Constraint1" msdata:PrimaryKey="true"> <xs:selector xpath=".//mstns:authors" />
<xs:field xpath="mstns:au_id" /> </xs:unique> </xs:element> </xs:schema> <authors>

Visual Studio

135

<au_id>172-32-1176</au_id> <au_lname>West</au_lname> <au_fname>Paul</au_fname>


<au_phone>408 555-0123</au_phone> </authors> <authors> <au_id>213-46-8915</au_id>
<au_lname>Gray</au_lname> <au_fname>Chris</au_fname> <au_phone>415 5550120</au_phone> </authors> </dsPubs>

6.

Salve o arquivo Authors.xml, e feche-o.

Criando um componente
A prxima etapa para criar uma classe para atuar como o seu componente de
negcios. Voc ir manter o componente na pasta App_Code do site da Web. Em
um aplicativo real, voc pode manter o componente em qualquer armazenamento
conveniente, incluindo o cache global de assemblies. Se seu site no tiver uma
pasta chamada App_Code, voc deve criar uma.
Para criar uma pasta App_Code

No Solution Explorer, clique com o boto direito do mouse no nome de seu


site, clique Add ASP.NET Folder, e em seguida, clique em App_Code.
Observao
A pasta deve ser nomeada App_Code.

Agora voc poder adicionar o componente ao seu site.


Para criar o componente Business
1.

Na Solution Explorer, clique com o boto direito do mouse, na pasta


App_Code e clique Add New Item.
Observao
Certifique-se de criar o novo item na pasta App_Code.

2.

A caixa de dilogo Add New Item aparece.

3.

Em Visual Studio installed templates, clique em Class.

4.

Na caixa Language, clique na linguagem de programao que voc preferir.

5.

Na caixa Name, digite BusinessObject.

6.

Clique em Add.
O Visual Web Developer cria o novo arquivo de classe e abre o editor de
cdigos.

7.

Copie o seguinte cdigo, e cole-o para o arquivo, sobrescrevendo o que j


estiver no arquivo.
C#
using System; using System.Web; using System.Data; namespace PubsClasses { public class
AuthorClass { private DataSet dsAuthors = new DataSet("ds1"); private String filePath =
HttpContext.Current.Server.MapPath ("~/App_Data/Authors.xml"); public AuthorClass() {
dsAuthors.ReadXml (filePath, XmlReadMode.ReadSchema); } public DataSet GetAuthors () {
return dsAuthors; } } }

Visual Studio

136

Observao
Certifique-se de que o valor da varivel filePath referencia o nome do arquivo XML que voc criou
anteriormente.
Quando uma instncia da classe criada, ele l o arquivo XML e converte em
um DataSet. A classe do mtodo GetAuthors retorna o DataSet.
8.

Salve o arquivo. Voc deve salvar o arquivo para que a prxima seo
funcione corretamente.

Exibindo dados usando o componente Business


Voc pode chamar o componente Business em uma pgina da Web e exibir seus
dados. Para referenciar o componente, use um controle ObjectDataSource, que
est especificamente projetado para trabalhar com objetos.
Para criar um controle ObjectDataSource que referencia o componente
1.

Alterne para ou abra a pgina Default.aspx.


Observao
Se voc no tem uma pgina Default.aspx, voc pode usar outra pgina. Como alternativa, voc pode
adicionar uma nova pgina para o site. No Solution Explorer, clique com o boto direito do mouse no
nome do site, clique em Add New Item, e adicione. um Web Form

2.
3.
4.

Alterne para modo Design.


No Toolbox, a partir da pasta Data, arraste um controle
ObjectDataSource para dentro da pgina.
Na janela Properties, definida ID como AuthorsObjectDataSource.

5.

Clique com o boto direito do mouse no controle ObjectDataSource e em


seguida, clique na marca inteligente para exibir o Menu ObjectDataSource
Tasks.

6.

No menu ObjectDataSource Tasks, clique em Configure Data Source.


O assistente Configure Data Source aparece.

7.

Na lista Choose your business object, clique PubsClasses.AuthorClass.

8.

Clique em Next.

9.

Na guia Select, na lista Choose a method, clique em GetAuthors(),


returns Dataset.
O mtodo GetAuthors definido na classe Business criada anteriormente.
Ele retorna um DataSet contendo os dados do arquivo Authors.xml.

10. Clique em Finish.


As informaes de configurao que voc inseriu especificam que para obter
dados do componente, o mtodo GetAuthors do componente deve ser chamado.
Agora voc pode obter dados do componente usando o controle
ObjectDataSource. Voc ir exibir os dados em um controle GridView na pgina.

Visual Studio

137

Para exibir dados do componente


1.

No Toolbox, a partir da pasta Data, arraste um controle GridView para a


pgina.

2.

Clique com o boto direito do mouse no controle GridView e clique na marca


inteligente se o Menu Common GridView Tasks no estiver aparecendo.

3.

No menu Common GridView Tasks, na caixa Choose Data Source, clique


em AuthorsObjectDataSource.

4.

Pressione CTRL+F5 para executar a pgina.


O controle GridView exibido com o dados XML dentro dele.

Inserindo dados usando o componente Business


Como em outros controles de fonte de dados, como o Controle SqlDataSource , o
Controle ObjectDataSource suporta atualizao (inserir, atualizar e excluir). Nesta
seo, voc modificar o componente Business com um mtodo que insere um
registro autor. Ento, voc ir alterar a pgina para que os usurios possam digitar
novas informaes de autor e modificar o controle ObjectDataSource para
executar a insero.
Observao
Durante esta parte da explicao passo a passo, o arquivo Authors.xml que voc criou anteriormente ser
atualizado. importante que o aplicativo tenha permisso para gravar no arquivo em tempo de execuo
ou a pgina da Web exibir um erro quando voc tentar atualizar o arquivo. Se voc tiver criado o arquivo
Authors.XML na pasta App_Data, as permisses so definidas automaticamente.
Para modificar o componente Business para permitir insero
1.

Alterne para o arquivo BusinessObject.

2.

Adicione o seguinte mtodo como o membro final do AuthorClass.


C#
public void InsertAuthor (String au_id, String au_lname, String au_fname, String au_phone) {
DataRow workRow = dsAuthors.Tables[0].NewRow (); workRow.BeginEdit (); workRow[0] =
au_id; workRow[1] = au_lname; workRow[2] = au_fname; workRow[3] = au_phone;
workRow.EndEdit (); dsAuthors.Tables[0].Rows.Add (workRow); dsAuthors.WriteXml (filePath,
XmlWriteMode.WriteSchema); }

Observao
Preste ateno para os nomes das variveis usadas para passar informaes do autor para o mtodo Close
(au_id, au_lname e au_phone, au_fname ). Eles devem corresponder aos nomes de coluna definidos no
esquema do arquivo XML criado anteriormente.
O novo mtodo tem quatro valores para inserir, que voc ir fornecer na
pgina como parmetros. O mtodo cria uma nova linha no DataSet, e grava
o DataSet atualizado de sada como um arquivo XML.
3.

Salve o arquivo.

Visual Studio

138

A prxima etapa alterar a pgina para que os usurios possam inserir novas
informaes de autor. Para o procedimento seguinte, voc ir usar o controle
DetailsView .
Para adicionar um controle para inserir dados
1.

Alterne para ou abra a pgina Default.aspx.

2.

Alterne para modo Design.

3.

Em Toolbox, a partir da pasta Data, arraste um controle DetailsView para


a pgina.
Observao
O leiaute exato da pgina no importante.

4.

No menu DetailsView Tasks, na caixa Choose Data Source, clique em


AuthorsObjectDataSource.
Observao
Se no estiver visvel, no menu DetailsView Tasks clique na marca inteligente.

5.

Na janela Properties, defina AutoGenerateInsertButton como true.


Isso faz com que o controle DetailsView processe um boto New que os
usurios podem clicar para colocar o controle no modo de entrada de dados.

Finalmente, voc deve configurar o controle ObjectDataSource para especificar


qual ao o controle deve executar para inserir dados.
Para configurar o controle da fonte de dados para inserir dados

Clique com o boto direito do mouse AuthorsObjectDataSource, clique em


Properties, e defina InsertMethod para InsertAuthor.
Este o nome do mtodo adicionado para o componente Business.

Agora voc pode inserir novos autores no arquivo XML.


Para testar a insero
1.

Pressione CTRL+F5 para executar a pgina Default.aspx.

2.

No controle DetailsView, clique no boto New.


O controle reexibido com caixas de texto.

3.

Insira novas informaes de autor, e clique Insert.


As novas informaes de autor so adicionadas ao arquivo XML. O controle
GridView imediatamente reflete o novo registro.

Prximas etapas
Esta explicao passo a passo ilustra como trabalhar com um componente de
dados. Voc pode desejar testar recursos adicionais de navegao. Por exemplo,
voc pode desejar:

Adicionar funcionalidades de atualizao e excluso . Para fazer isso, adicione


mtodos ao componente. Isso semelhante a lgica usada para adicionar a
insero voc adiciona um mtodo ao componente, configura o controle da

Visual Studio

139

fonte de dados para chamar o mtodo componente, adiciona parmetros


apropriados, e adiciona uma linha de cdigo para chamar os mtodos Update e
Delete do controle da fonte de dados. Para obter detalhes, consulte Passo-apasso: Editando e Inserindo Dados com o controle DetailsView do servidor Web

Alterar o componente Business para trabalhar com dados de banco de dados


em vez de com um arquivo XML. Voc no precisa fazer qualquer alterao aos
controles na pgina.

Restringir quais usurios podem fazer alteraes aos dados. Um mtodo


comum adicionar membros e funes ao seu site, e depois estabelecer regras
que o componente Business pode verificar antes de permitir as alteraes feitas
nos dados. Para obter detalhes, consulte Passo-a-passo: Criando um site com
associaes e logon de usurio (Visual Studio) e Passo-a-passo: Gerenciando
Usurios de Sites da Web com Papis.

Visual Studio

140

Explicao passo a passo: depurao de


pginas da Web no Visual Web Developer
O Visual Web Developer fornece ferramentas para ajudar a rastrear erros em suas
pginas da Web do ASP.NET. Nesta explicao passo a passo, voc trabalhar com
o depurador, o qual permite que voc execute o cdigo da pgina linha por linha e
examine os valores das variveis.
Nesta explicao passo a passo, voc criar um pgina da Web que contm uma
calculadora simples que eleva um nmero ao quadrado. Aps criar a pgina (que
incluir um erro deliberadamente), voc usar o depurador para examinar a pgina
enquanto esta estiver sendo executada.
Tarefas ilustrado nesta explicao passo a passo incluem:
Definir pontos de interrupo.

Chamar o depurador a partir de um pgina Web Forms em um site no


sistema de arquivos.
Pr-requisitos

Para concluir este explicao passo a passo, sero necessrios:


Visual Web Developer e o .NET Framework.

Voc tambm deve ter uma compreenso geral de como trabalhar no Visual Web
Developer. Para uma introduo ao Visual Web Developer, consulte Explicao
passo a passo: Criando uma pgina da Web bsica no Visual Web Developer.
Criar pgina e site da Web
Na primeira parte da explicao passo a passo, voc criar uma pgina que voc
pode depurar.
Se voc j criou um site no Visual Web Developer (por exemplo, por ter seguido o
tpico Explicao passo a passo: Criando uma pgina da Web bsica no Visual Web
Developer), voc pode usar o site criado e pular para "Adicionando controles para
depurao" a seguir nesta explicao. Caso contrrio, crie um novo site e pgina
seguindo estes passos.
Para criar um site no sistema de arquivos
1.

Abra o Visual Web Developer.

2.

No menu File, clque em New Web Site.


A caixa de dilogo New Web Site aparecer.

3.

Em Visual Studio installed templates, clique em ASP.NET Web Site.

4.

Na caixa Location, clique em File System e digite o nome da pasta onde


voc deseja manter as pginas do seu site.
Por exemplo, digite o nome da pasta C:\WebSites.

5.

Na lista Language clique na linguagem de programao que voc preferir


para trabalhar.
O linguagem de programao que voc escolher ser o padro para seu site.
Entretanto, voc pode usar vrias linguagens no mesmo aplicativo da Web,
criando pginas e componentes em linguagens de programao diferentes.
Para obter informaes sobre como criar componentes usando diferentes

Visual Studio

141

linguagens, consulte Compartilhada pastas cdigo em sites da Web do


ASP.NET.
6.

Clique em OK.
O Visual Web Developer cria a pasta e uma nova pgina chamada
Default.aspx.

Criando uma pgina para depurao


Voc comear criando uma nova pgina. Para esta explicao passo a passo,
importante que voc crie uma nova pgina conforme especificado no procedimento
a seguir.
Para adicionar uma pgina ao site
1.
2.

Feche a pgina Default.aspx.


No Solution Explorer, clique com o boto direito do mouse no nome do seu
site (por exemplo, C:\WebSite) e escolha Add New Item.

3.

Em Visual Studio installed templates, escolha Web Form.

4.

Na caixa Name, digite DebugPage.aspx.

5.

A partir da lista Language, escolha a linguagem de programao que voc


preferir usar.

6.

Certifique-se que a caixa de seleo Place code in separate file est


desmarcada.
Nesta explicao passo a passo, voc est criando uma pgina em um nico
arquivo com o cdigo e HTML na mesma pgina. O cdigo para pginas
ASP.NET pode estar localizado na pgina ou em um arquivo de classe
separado. Para saber mais sobre como manter o cdigo em um arquivo
separado, consulte Explicao passo a passo: Criando uma pgina da Web
bsica com separao de cdigo no Visual Web Developer.

7.

Clique em Add.
O Visual Web Developer cria a nova pgina e a abre no modo de fonte.

Voc pode agora adicionar alguns controles pgina e depois adicionar cdigo. O
cdigo ser simples, mas suficiente para permitir que voc adicione pontos de
interrupo posteriormente.
Para adicionar controles e cdigo para depurao
1.

Mude para o modo de exibio Design e depois da pasta Standard para a


pasta Toolbox, arraste ento os seguinte controles para a pgina:
Controle

Propriedades

Label

ID: CaptionLabel
Text: (empty)

TextBox

ID: NumberTextBox
Text: (empty)

Button

ID: SquareButton
Text: Square

Label

ID: ResultLabel
Text: (empty)

Observao

Visual Studio

142

O layout da pgina para esta explicao passo a passo, no importante.


2.

Clique duas vezes no controle Button role para criar um manipulador Click
para ele.

3.

Adicione lgica ao manipulador Click para chamar uma funo chamada


Square para elevar o nmero digitado pelo usurio ao quadrado. O
manipulador deve se parecer com o exemplo a seguir.
Observao
O exemplo de cdigo deliberadamente no inclui a verificao de erros.

C#
protected void SquareButton_Click(object sender, System.EventArgs e) { int number, result; number =
System.Convert.ToInt32(NumberTextBox.Text); result = Square(number); ResultLabel.Text =
NumberTextBox.Text + " squared is " + result.ToString(); }

4.

Crie a funo que eleve o nmero ao quadrado. Inclua um erro no cdigo que
adicione o nmero a si mesmo em vez de multiplicar. O cdigo deve se
parecer com o exemplo a seguir.
C#
int Square(int number ) { int Square; Square = number + number; return Square; }

Voc tambm pode adicionar cdigo na pgina para alterar o texto do rtulo
dependendo se esta for a primeira vez que a pgina est sendo executada.
Para alterar a legenda do controle Label
1.

No modo de exibio Design, clique duas vezes na superfcie de design (no


no controle) para criar um manipulador de eventos Page_Load.

2.

Defina o texto do controle Caption Label como Enter a number: se esta


for a primeira vez a pgina est em execuo, ou Enter another number:
caso contrrio. O manipulador deve se parecer como o exemplo de cdigo a
seguir.
C#
if(Page.IsPostBack == false) { CaptionLabel.Text = "Enter a number: "; } else { CaptionLabel.Text
= "Enter another number: " ; }

Teste a pgina
Para certificar-se que a pgina est funcionando, execute-a em seu estado atual.
Para executar a pgina
1.

Salve a pgina.

2.

Pressione CTRL+F5 para executar a pgina.

3.

Digite um nmero (diferente de 2) e pressione o boto Square.


Observe que o resultado incorreto, porque h um erro no programa.

4.

Feche o navegador.

Depurando a pgina

Visual Studio

143

Nesta parte da explicao passo a passo, voc usar o depurador para examinar o
cdigo da pgina linha por linha ao ser executado, adicionar pontos de interrupo
no cdigo e executar a pgina no modo Debug.
Inicialmente, voc definir pontos de interrupo em seu cdigo. Um ponto de
interrupo uma linha em seu cdigo onde a execuo pra e o depurador
chamado.
Para definir pontos de interrupo
1.
2.

Mude para o modo de visualizao Source.


Clique com o boto direito do mouse na linha a seguir, escolha Breakpoint,
e escolha Insert Breakpoint.
Observao
Voc pode habilitar e desabilitar pontos de interrupo, pressionando F9.

C#
if(Page.IsPostBack == false)

3.

Defina outro ponto de interrupo para a linha a seguir do manipulador


SquareButton_Click:

C#
result = Square(number);

Observao
Voc no pode definir um ponto de interrupo em uma instruo que declara uma varivel.
Com pelo menos um ponto de interrupo, voc estar pronto para executar o
depurador.
Para executar o depurador
1.

A partir do menu Debug escolha Start Debugging (ou pressione F5) para
executar a pgina no modo de depurao.
Se voc nunca tiver executado o depurador antes, seu aplicativo
provavelmente no estar configurado para oferecer suporte a depurao. Por
padro, depurao desativada em aplicativos por questes de desempenho
(pginas executam mais lentamente no depurador) e por razes de
segurana. O Visual Web Developer exibe uma mensagem informando a voc
o que deve fazer para ativar a depurao.
A opo para ativar a depurao armazenada como uma configurao no
arquivo Web.config, que mantm vrias opes de configurao especficas do
site. Se o arquivo Web.config no existir, o Visual Web Developer vai tanto
criar o arquivo quanto realizar a configurao apropriada do depurador.
Se o arquivo Web.config j existe mas a depurao no estiver ativada, voc
ver uma mensagem ligeiramente diferente informando que o Visual Web
Developer ir modificar o arquivo Web.config.

2.

Se voc vir a mensagem informando que depurao no est ativada, clique


OK para ativar a depurao.

Visual Studio

144

No Visual Web Developer, o designer altera para modo de depurao exibindo


o cdigo para a pgina e algumas janelas de depurao.
O depurador executa sua pgina linha por linha. Quando o depurador chega
na linha com o ponto de interrupo, ele para e reala a linha.
Como o ponto de interrupo est no manipulador Page_Load, a pgina
ainda no terminou de ser processada. O navegador est aberto, mas a
pgina no ser exibida ainda.
3.

No menu Debug, clique em Windows, clique em Watch e em seguida,


clique em Watch 1
Observao
Se voc estiver usando o Visual Web Developer Express Edition, o depurador oferece apenas uma nica
janela Watch.

4.

Isso abre uma janela Watch onde voc pode especificar os valores que voc
deseja rastrear.

5.

No editor, clique com o boto direito do mouse na parte IsPostBack da


expresso Page.IsPostBack e clique Add Watch.
Isso adiciona a expresso na janela Watch e exibe o valor atual da
propriedade (false) exibida na coluna Value. Se voc preferir, voc pode
digitar o nome de uma varivel ou propriedade na coluna Name da janela
Watch.

6.

A partir do menu Debug, escolha Continue para continuar a execuo, ou


pressione F5.
O comando Continue informa o depurador para continuar at que ele chegue
no prximo ponto de interrupo. O manipulador de eventos Page_Load
termina o processamento e a pgina exibida no navegador.

7.

Insira o valor 2 na caixa de texto e clique o boto Square.


O depurador ser exibido novamente, com o ponto de interrupo na linha no
manipulador Page_Load. Neste momento, a janela Watch mostra que o
valor de Page.IsPostBack true.

8.

Pressione F5 novamente para continuar.


O depurador processa o manipulador Page_Load e entra no manipulador
SquareButton_Click, onde ele para no segundo ponto de interrupo que voc
definiu.

9.

No menu Debug, clique em Windows e clique Locals.


Isso abre a janela Locals, que exibe os valores de todas as variveis e
objetos que esto sendo no escopo da linha sendo executada. A janela Locals
fornece uma maneira alternativa para voc exibir esses valores, com a
vantagem de que voc no precisa definir explicitamente um observador para
os elementos, mas com a desvantagem de que a janela pode conter mais
informaes do que voc deseja ver.
Na janela Locals, voc v que o valor de number 2 e o valor de result 0.
Observao

Visual Studio

145

Voc tambm pode ver o valor de qualquer varivel no programa, mantendo o ponteiro do mouse sobre
ela.
10. Na coluna Value da janela Locals, clique com o boto direito do mouse na
linha para a varivel number e selecione Edit value. Edite o valor da varivel
number e altere-o para 5.
O valor 2 para a varivel number no um bom teste do programa, como
tanto adicionar quanto elevar 2 a 2 resulta em 4. Portanto, enquanto o
programa est sendo executado, voc pode alterar o valor dessa varivel.
11. A partir do menu Debug, escolha Step Into para entrar na funo Square, ou
pressione F11.
O comando Step Into faz com que o depurador execute uma linha e depois
interrompa novamente.
12. Continue a depurao pressionando F11 at chegar a linha de cdigo a
seguir.
C#
ResultLabel.Text = NumberTextBox.Text + " squared is " + result.ToString();

O depurador percorre seu cdigo linha por linha. Quando o depurador executa
a funo Square, voc pode usar a janela Locals para verificar os dados
passados para a funo (number) e o valor de retorno da funo (Square).
13. No menu Debug, clique em Windows e Immediate.
A janela Immediate permite que voc execute comandos. Voc pode usar a
janela para avaliar expresses (por exemplo, para obter o valor de uma
propriedade).
14. Na janela Immediate, digite a expresso a seguir e pressione ENTER.
? NumberTextBox.Text

O ponto de interrogao (?) um operador na janela Immediate que avalia


a expresso que o segue. No exemplo, voc est avaliando a propriedade
Text do controle NumberTextBox na pgina. Voc pode avaliar qualquer varivel,
propriedade de objeto ou expresso que combinem essas, usando a mesma
sintaxe que voc usaria em cdigo.
15. Na janela Immediate, digite o seguinte e pressione ENTER:
NumberTextBox.Text = "5"

Alm de avaliar expresses, a janela Immediate permite que voc altere


variveis ou propriedades
16. Pressione F5 para continuar a execuo do programa.
Quando a pgina aparecer, ela exibe o resultado de passar 5 para a funo
Square. Alm disso, o texto na caixa de texto foi alterado para 5.
O resultado que voc v 10 incorreto , j que 10 no o quadrado de 5.
Voc pode agora corrigir o erro.
Para corrigir o erro e testar novamente
1.

Mude do navegador para o Visual Web Developer.

Visual Studio

146

Observao
No feche o janela do navegador.
2.

Na funo Square, altere o operador "+" para o operador "*".


Como o cdigo no est em execuo (a pgina terminou de ser processada),
voc est em modo de edio e pode fazer alteraes permanentes.

3.
4.

Pressione CTRL+S para salvar a pgina.


A partir do menu Debug, escolha Delete All Breakpoints para que a
pgina no pare a cada vez que for executada.
Observao
Voc tambm pode limpar os pontos de interrupo, pressionando as teclas CTRL+SHIFT+F9.

5.

Mude para o janela do navegador.

6.

Insera 5 na caixa de texto e clique o boto.


Desta vez, quando voc executar a pgina e inserir um valor, ele elevado ao
quadrado corretamente. As alteraes temporrias que voc fez
anteriormente, como alterar a propriedade Text do controle NumberTextBox,
no foram persistentes, porque eles se aplicavam somente quando a pgina
foi executada da ltima vez.

7.

Feche o navegador para interromper o depurador.

Prximas etapas
O depurador inclui recursos adicionais para ajud-lo a trabalhar com seu cdigo.
Alm disso, talvez voc queira aprender sobre tcnicas para manipular condies
de erro e formas em que voc pode monitorar o processamento de pgina em
tempo de execuo. Por exemplo, talvez voc queira explorar o rastreamento. Para
obter detalhes, consulte Explicao passo a passo: Usando rastreamento no Visual
Web Developer para ajudar a localizar erros em pgina da Web.

Visual Studio

147

Passo-a-passo: Criando e usando


Pginas Mestras do ASP.NET no Visual
Web Developer
Esta explicao passo-a-passo ilustra como criar uma pgina mestra e diversas
pginas de contedo. Pginas mestras permitem que voc crie um layout de pgina
uma pgina modelo e ento crie pginas separadas contendo o contedo que
ser mesclado com a pgina mestra em tempo de execuo. Para obter mais
informaes sobre pginas mestras, consulte Viso Geral sobre Pginas Mestras no
ASP.NET .
Tarefas ilustrado esta explicao passo a passo incluem:
Criando uma pgina mestra no Microsoft Visual Web Developer .

Criando uma pgina ASP.NET com contedo que voc deseja exibir na pgina
mestra.

Executando pginas mestras para mostrar um contedo diferente.

Selecionando uma pgina mestra em tempo de execuo.


Pr-requisitos

Para concluir esta explicao passo a passo, ser necessrio:

Visual Web Developer (Visual Studio).

O .NET Framework.

Opcionalmente, um.jpg, .gif, ou outro arquivo grfico que voc possa usar
como um logotipo em sua pgina mestra. recomendvel que o logotipo no
seja maior do que 48 pixels de largura. Entretanto, a exibio de um logotipo
opcional e o tamanho exato do grfico no ser importante para a explicao
passo a passo.
Criando um site da Web

Se voc j tiver criado um site no Visual Web Developer (por exemplo, seguindo as
etapas do Passo-a-passo: Criando uma pgina bsica da Web em Visual Web
Developer), voc pode usar esse site e v para a prxima seo, "Criando a Pgina
mestra.". Caso contrrio, crie um novo site e pgina seguindo estas etapas.
Para criar um site do sistema de arquivos
1.

Abra o Visual Web Developer.

2.

No menu File, clique em New Web Site.


A caixa de dilogo New Web Site aparece.

3.
4.

Em Visual Studio installed templates, clique em ASP.NET Web Site.


Na caixa Location, insira o nome da pasta onde voc deseja manter as
pginas do seu site.
Por exemplo, digite o nome da pasta C:\WebSites.

5.
6.

Na lista Language, clique a linguagem de programao em que voc preferir


para trabalhar.
Clique em OK.

Visual Studio

148

O Visual Web Developer cria a pasta e uma nova pgina chamada


Default.aspx.
Criando a pgina mestra
A pgina mestra o modelo de como ser o aspecto de suas pginas. Nesta seo,
voc primeiro criar um pgina mestra. Ento, voc ir usar uma tabela para
formatar a pgina mestra com um menu, um logotipo, e um rodap que ser
exibido em cada pgina do seu site. Voc tambm vai trabalhar com um espao
reservado de contedo, que uma regio na pgina mestra que pode ser
substituda por informaes em uma pgina de contedo.
Para criar a pgina mestra
1.

No Solution Explorer, clique com o boto direito do mouse no nome do seu


site, e ento clique Add New Item.

2.

Em Visual Studio installed templates, clique em Master Page.

3.

Na caixa Name, digite Master1.

4.

Selecione a caixa de seleo Place code in separate file .


Observao
Esta explicao passo-a-passo assume que voc est usando arquivos code-behind para todas as pginas.
Se voc estiver usando uma pgina ASP.NET Single-file, o cdigo ilustrado nesta explicao passo-apasso ir funcionar, mas aparecer no modo de origem, no em um arquivo separado de cdigo

5.

Na lista Language, clique na linguagem de programao que voc preferir e


clique Add.
A nova pgina mestra abre no modo de origem.
Na parte superior da pgina est uma declarao @ Master em vez de uma
declarao @ PAGE normalmente encontrada na parte superior de pginas
ASP.NET. O corpo da pgina contm um controle
<asp:contentplaceholder>, que a rea da pgina mestra onde os
contedo substituveis sero mesclados nas pginas de contedo em tempo
de execuo. Voc ir trabalhar mais com o espao reservado de contedo
posteriormente nesta explicao passo-a-passo.

Dispondo a Pgina Mestra


A pgina mestra define como as pginas no seu site aparentam. Ela pode conter
qualquer combinao de textos estticos e controles. Uma pgina mestra tambm
contm um ou mais espaos reservados de contedo que designam onde o
contedo dinmico aparecer quando as pginas forem exibidas.
Nesta explicao passo a passo, voc ir usar uma tabela para ajudar voc a
posicionar elementos na pgina. Voc iniciar criando uma tabela de layout para
armazenar os elementos da pgina mestra. Posteriormente, nesta seo, ir
posicionar o controle de espao reservado de contedo que j estiver na pgina.
Para criar uma tabela de layout para a pgina mestra
1.

Com o arquivo Master1.Master selecionado no modo de exibio de origem,


defina o esquema de destino para validao para o Microsoft Internet Explorer
6.0. Para definir esse valor, voc pode usar tanto a lista suspensa na caixa de
ferramentas ou selecionar Options a partir do menu Tools, e clicar em
Validation.

Visual Studio

149

2.
3.

Alternar para modo Design.


A partir da Lista suspensa na parte superior da janela Propriedades,
selecione DOCUMENT, e defina BgColor para uma cor diferente, como azul.
A cor selecionada no importante. Posteriormente nesta explicao passo-apasso voc criar uma segunda pgina mestra sem uma cor para comparar
com aquilo que voc est selecionando aqui.

4.

Clique na pgina onde voc deseja colocar a tabela de layout.


Observao
No coloque a tabela de layout dentro do Controle ContentPlaceHolder.

5.
6.

No menu Layout, clique em Insert Table.


Na caixa de dilogo Insert Table , clique em Template. Na lista cliquem em
Header, footer and side, e clique OK.
O modelo define a organizao de linhas e clulas na tabela. O modelo que
voc selecionou cria trs linhas, e a linha central dividida em duas clulas.

7.

Faa as seguintes configuraes:

Na linha do meio, clique na coluna mais esquerda, e defina seu


Width como 48 na janela Properties.

Clique na primeira linha, e defina seu Height como 48 na janela


Properties.

Clique na linha inferior, e defina seu Height como 48 na janela


Properties.
Observao
Voc pode definir a largura e altura arrastando as bordas de clula da tabela ou selecionando a clula e
definindo valores na janela Properties.

8.

Selecione todas as clulas na tabela e defina BgColor como uma cor


diferente do que a cor do plano de fundo, e defina VAlign como top.

Aps definir o layout a tabela, voc pode adicionar contedo para a pgina mestra
que aparecer em todas as pginas. Voc ir adicionar uma mensagem de direitos
autorais como um rodap, e adicionar um menu. Se tiver um grfico de logotipo
disponvel, voc poder adiciona-lo tambm.
Para adicionar contedo esttico para a pgina mestra
1.

Clique na clula inferior e digite o texto rodap como Copyright 2005


Contoso Inc.

2.

Na Toolbox, a partir do grupo de controle Navigation, arraste um controle


de Menu para a clula superior.

3.

Crie um menu seguindo estas etapas:


1.

Defina a propriedade do controle do Menu Orientation como


Horizontal.

Visual Studio

150

2.
4.

Em Items, clique duas vezes no cone Add a root node para adicionar dois
itens de menu :
1.

Clique no primeiro n, e defina Text como Home e NavigateUrl


como Home.aspx.

2.

Clique no segundo n, e defina Text como About e NavigateUrl


como About.aspx.

3.
5.

Clique na marca inteligente no controle do Menu, e clique Edit Menu


Items na caixa de dilogo Menu Tasks.

Clique OK para fechar a caixa de dilogo Menu Item Editor.

Se voc tiver um arquivo grfico disponvel para uso como um logotipo, siga
estas etapas para coloc-lo na pgina mestra:
1.

Na Solution Explorer, clique com o boto direito do mouse no nome do


site, e clique Add Existing Item.

2.

Navegue para o arquivo grfico, selecione o arquivo grfico, e ento


clique Add.

3.

Na Toolbox do grupo Standard, arraste um controle de Image para a


coluna do esquerda no meio de tabela.

4.

Definida a propriedade do controle da Imagem ImageUrl com o nome


do arquivo grfico.

Agora voc pode posicionar o espao reservado de contedo para especificar onde
a pgina mestra pode exibir contedo em tempo de execuo.
Para adicionar um espao reservado de contedo
1.

Arraste o controle ContentPlaceHolder para a clula direita do meio.


A Propriedade ID do controle ContentPlaceholder1. Voc pode deixar esse nome
ou alter-lo. Se voc alterar o nome, certifique-se de anotar o nome porque
voc precisar saber o nome mais tarde.

2.

Salvar a pgina.

Criando Contedo para a Pgina Mestra


A pgina mestra fornece o modelo para o seu contedo. Voc define o contedo
para a pgina mestra, criando uma pgina ASP.NET que est associada com a
pgina mestra. A pgina de contedo uma forma especializada de uma pgina
ASP.NET que contm somente o contedo a ser mesclado com a pgina mestra. Na
pgina de contedo, voc adiciona o texto e os controles que voc deseja exibir
quando os usurios solicitarem essa pgina.
Nesta explicao passo a passo, voc ir adicionar duas pginas com contedo para
a pgina mestra. A primeira uma Home Page e a segunda uma pgina do tipo
Sobre.
Para criar a Home Page
1.

No Solution Explorer, clique com o boto direito do mouse no nome do site, e


clique em Add New Item.

2.

Em Visual Studio installed templates, clique em Web Form.

3.

Na caixa Name, digite Home.

4.

Na lista Language, clique na linguagem de programao que voc preferir.

5.

Selecione a caixa de seleo Select master page, e clique Add.

Visual Studio

151

A caixa de dilogo Select a Master Page aparece.


6.

Clique em Master1.master, e clique OK.


Um novo arquivo.aspx criado. A pgina contm uma diretiva @ PAGE que
conecta a pgina atual com a pgina mestra selecionada com o atributo
MasterPageFile, como mostrado no seguinte exemplo de cdigo.
C#
<%@ Page Language="C#" MasterPageFile="~/Master1.master" ... %>

A pgina tambm contm um elemento <asp:Content> com que voc ir


trabalhar a seguir.
Uma pgina de contedo no tem os elementos usuais que compem uma pgina
ASP.NET, como os elementos html, body, ou form. Em vez disso, voc adiciona
somente o contedo que voc deseja exibir na pgina mestra, substituindo as
regies do espao reservado que voc criou na pgina mestra.
Para adicionar contedo para a Home Page
1.

Alterne para o modo Design.


A regio que voc criou como um controle ContentPlaceHolder na pgina
mestra exibida como um Controle de Contedo na nova pgina de
contedo. Todo o contedo restante da pgina mestra exibido, portanto
voc pode ver o layout, mas ele aparece esmaecido porque voc no poder
alter-lo ao editar uma pgina de contedo.

2.

Da lista suspensa na janela Properties, clique em DOCUMENT, e defina Title


para Home Page de Contoso.
Voc pode definir o ttulo de cada pgina de contedo independentemente, de
forma que o ttulo correto exibido no navegador quando o contedo
mesclado com a pgina mestra. As informaes de ttulo so armazenadas na
diretiva @ Page da pgina de contedo.

3.

No Controle Content, digite Welcome to the Contoso Web Site, selecione


o texto, e em seguida, formate o texto como Heading 1 selecionando o texto
e ento selecionando Heading 1 da lista suspensa Block Format acima da
Toolbox.

4.

Pressione ENTER para criar uma nova linha vazia no controle Content, e em
seguida, digite Obrigada por visitar nosso site.
O texto adicionado aqui no importante; voc pode digitar qualquer texto
que o ajudar a reconhecer esta pgina como a home page.

5.

Salve a pgina.

Voc pode criar a pgina Sobre da mesma forma que voc criou a Home Page.
Para criar a pgina Sobre
1.

Use as mesmas etapas que voc usou para a Home Page para adicionar uma
nova pgina de contedo chamada About.aspx.
Certifique-se de anexar a nova pgina pgina Master1.Master como fez com
a Home Page.

2.

Altere o ttulo da pgina para Pgina Sobre Contoso.

Visual Studio

152

3.

Na regio de contedo, digite Sobre Contoso, e em seguida, formate o


texto como um Heading 1, selecionando o texto e selecionando Heading 1
do Block Format da lista suspensa acima do Toolbox.

4.

Pressione ENTER para criar uma nova linha, e digite Desde 1982, Contoso
prov servios de software de alta qualidade.

5.

Salve a pgina.

Testando as pginas
Voc pode testar as pginas, executando-as como voc faria com qualquer pgina
ASP.NET.
Para testar as pginas
1.

Alterne para a pgina Home.aspx, e pressione CTRL+F5.


O ASP.NET mescla o contedo da pgina Home.aspx com o layout na pgina
Master1.master em uma nica pgina e exibe a pgina resultante no
navegador. Observe que a URL da pgina Home.aspx; no h nenhuma
referncia no navegador para a pgina mestra.

2.

Clique no link Sobre.


A pgina About.aspx exibida. Ela tambm ser mesclada com a pgina
Master1.MASTER.

Referenciando Membros da Pgina Mestra


Cdigo em pginas de contedo podem referenciar membros da pgina mestra,
incluindo quaisquer propriedades pblica ou mtodos e os controles da pgina
mestra. Nesta parte da explicao passo a passo voc ir criar uma propriedade na
pgina mestra, e em seguida, usar o valor da propriedade nas pginas de
contedo. A premissa que o nome da empresa do site est armazenado como
uma propriedade na pgina mestra, e qualquer referncia para o nome da empresa
nas pginas de contedo baseada na propriedade da pgina mestra.
A primeira etapa adicionar uma propriedade para a pgina mestra.
Para adicionar uma propriedade pgina mestra
1.
2.

Alterne para, ou abra, a pgina Master1.MASTER.


Na Solution Explorer, clique com o boto direito do mouse em
Master1.master, e clique View Code Para abrir o editor de cdigos.
Observao
Por padro, o Visual Web Developer cria pginas que usam o modelo code-behind. Se voc preferir, voc
pode criar cdigo usando o modelo Single-File. Para mais informaes, consulte Modelo de Cdigo de
Pgina Web do ASP.NET.

3.

Dentro da definio de classe, digite o cdigo a seguir.


C#
public String CompanyName { get { return (String) ViewState["companyName"]; } set {
ViewState["companyName"] = value; } }

O cdigo cria uma propriedade chamada CompanyName para a pgina mestra. O


valor armazenado no estado da exibio para que ele seja persistentes
entre postbacks.

Visual Studio

153

4.

Dentro da definio da classe (mas no dentro do cdigo da propriedade),


adicione o seguinte cdigo.
C#
void Page_Init(Object sender, EventArgs e) { this.CompanyName = "Contoso"; }

Para esse exemplo, voc ir embutir em cdigo o valor da propriedade


CompanyName para a pgina.
Agora voc pode modificar o pgina de contedo para usar a propriedade
CompanyName da pgina mestra.
Para referenciar a propriedade CompanyName na pgina de contedo
1.

Alterne para, ou abra, a pgina Home.aspx.

2.

Alterne para modo de origem.

3.

Na parte superior da pgina, sob a diretiva @ PAGE, adicione a seguinte


diretiva @ MasterType :
<%@ MasterType virtualpath="~/Master1.master" %>

A diretiva vincula a propriedade Master da pgina de contedo, que voc ir


usar logo, com a pgina Master1.Master.
4.

Alterne para modo Design.

5.

No controle Content, altere o texto para Bem-vindo ao site de.

6.

Na Toolbox do grupo Standard, arraste um controle Label para o controle


Content, e coloque-o aps o texto esttico de forma que leia-se o texto:
Bem-vindo ao site de [label]

7.
8.
9.

Defina a propriedade ID do controle do Label como CompanyName.


No Solution Explorer, clique com o boto direito do mouse em Home.aspx e
clique View Code para abrir o editor de cdigos.
Dentro da definio de classe, adicione o seguinte cdigo.
C#
void Page_Load(Object sender, EventArgs e) { CompanyName.Text = Master.CompanyName; }

A propriedade Master da pgina de contedo retorna uma referncia para a


pgina mestra conforme definido na diretiva @ MasterType adicionada na
etapa 3.
Agora voc pode testar a pgina de contedo para certificar-se de que ele est
referenciando a propriedade CompanyName da pgina mestra corretamente.
Para testar a referncia para a propriedade da pgina mestra
1.

Alterne para, ou abra, a pgina Home.aspx, e pressione CTRL+F5 para


executar a pgina.
A pgina exibida no navegador, com o texto Bem-vindo ao site de
Contoso

2.

Feche o navegador.

3.

Alterne para, ou abra, a pgina code-behind Master1.MASTER.

4.

Altere o manipulador Page_Init para atribuir um nome de empresa


diferente para a propriedade, como no seguinte exemplo de cdigo.

Visual Studio

154

C#
void Page_Init(Object sender, EventArgs e) { this.CompanyName = "New Company Name"; }

5.

Alterne para a pgina Home.aspx, e pressione CTRL+F5 para execut-la


novamente.
Neste momento, o nome da empresa atualizado aparece na pgina

Anotaes
H vrias outras questes que voc deve estar ciente ao trabalhar com uma pgina
mestra:

Em um aplicativo real, provavelmente voc iria armazenar informaes como


o nome da empresa no arquivo de configurao e l-las diretamente nas pginas
de contedo. No entanto, o cenrio descrito aqui fornece uma ilustrao simples
de como fazer a referncia a membros de pgina mestra nas pginas de
contedo.

Voc pode acessar membros na pgina mestra mesmo sem incluir uma
diretiva @ MasterType. Entretanto, para fazer isso, voc deve fazer um cast da
propriedade System.Web.UI.Page.Master para o tipo apropriado na pgina
mestra (a propriedade Master null se uma pgina no tiver nenhuma pgina
mestra). Para mais informaes, consulte Trabalhando com Pginas Mestras de
ASP.NET Programaticamente.

Voc pode referenciar controles na pgina mestra, usando o mtodo


Master.FindControls. Para mais informaes, consulte Trabalhando com
Pginas Mestras de ASP.NET Programaticamente.
Alterando pginas mestras dinamicamente

Em algumas circunstncias, convm poder alterar pginas mestras dinamicamente;


ou seja, usar cdigo para definir a pgina mestra para uma pgina de contedo.
Por exemplo, talvez queira permitir que os usurios selecionem entre vrios layouts
e defina a pgina mestra de acordo com suas preferncias.
Nesta parte da explicao passo a passo, voc ir adicionar uma segunda pgina
mestra ao site, e criar botes que permitem ao usurio alternar entre uma pgina
mestra e outra. Porque as duas pginas mestras sero muito semelhante, voc ir
fazer uma cpia da primeiro pgina mestra e ir modific-la para atuar como a
segunda pgina mestra .
Para fazer uma cpia da pgina mestra
1.

No Solution Explorer, clique com o boto direito do mouse em


Master1.master, e clique Copy.

2.

Clique com o boto direito do mouse no nome do site, e em seguida, clique


em Paste
Uma pgina mestra adicionada ao site a Web com o nome Copy of
master1.master.

3.

Clique com o boto direito do mouse em Copy of master1.master, clique


em Rename, e denomine a nova pgina mestra como Master2.master.

4.

Abra a Master2.Master e, na diretiva @ Master, altere Master1 para Master2.


A diretiva completa da pgina vai parecer com o exemplo de cdigo a seguir.
C#
<%@ Master Language="C#" CodeFile="Master2.master.cs" Inherits="Master2" %>

Visual Studio

155

5.
6.
7.

Alterne para modo Design.


Na janela Properties, na lista suspensa na parte superior, clique em
DOCUMENT.
Desmarque a propriedade BgColor.
A nova pgina mestra ter o aspecto e funcionalidades como a
Master1.master, mas no ter nenhuma cor de plano de fundo.

8.

Abra o arquivo de cdigo do Master2.Master e altere o nome da classe no


arquivo code-behind da pgina mestra de Master1 para Master2 para
corresponder ao valor do atributo Inherits na diretiva <%@ Master %> da
pgina.
O cdigo ter o aspecto como no exemplo a seguir.
C#
public partial class Master2 : System.Web.UI.MasterPage

A prxima etapa adicionar um boto para cada pgina mestra que permite ao
usurio selecionar a pgina mestra alternativa.
Para adicionar botes para selecionar uma pgina mestra alternativa
1.
2.
3.
4.

Alterne para, ou abra, a pgina Master2.MASTER.


Na Toolbox, a partir do n Standard, arraste um controle LinkButton para a
pgina e coloque-o abaixo do menu na clula mais alta da tabela.
Defina a propriedade Text do boto como Colorful.
Clique duas vezes no boto para criar um manipulador para o Evento Click,
e, em seguida, adicione o cdigo realado seguinte.
C#
void LinkButton1_Click(Object sender, EventArgs e) { Session["masterpage"] = "Master1.master";
Response.Redirect(Request.Url.ToString()); }

O cdigo carrega o nome da pgina mestra alternativa em uma varivel de


sesso persistente, e depois recarregue a pgina atual. (A propriedade Url
retorna um objeto Uri que faz referncia a pgina atual.) Em breve, voc vai
criar cdigo na pgina de contedo que usar o nome da pgina mestra.
5.

Alterne para, ou abra, a pgina Master1.Master no modo Design.

6.

Adicione um controle LinkButton como voc fez nas etapas 1 e 2, e defina


sua propriedade Text como Plain.

7.

Clique duas vezes no boto Plain para criar um manipulador para o Evento
Click, e, em seguida, adicione o cdigo realado seguinte.
C#
void LinkButton1_Click(Object sender, EventArgs e) { Session["masterpage"] = "Master2.master";
Response.Redirect(Request.Url.ToString()); }

Esse cdigo o mesmo que o usado para o boto na pgina Master2.master,


exceto que ele carrega uma pgina mestra alternativa.
Agora voc escreve o cdigo na pgina de contedo que ir carregar
dinamicamente a pgina mestra que o usurio tiver selecionado.

Visual Studio

156

Escrever cdigo para selecionar a pgina mestra dinamicamente


1.

Alterne para, ou abra, a pgina About.aspx.


Observao
A Home Page que voc criou contm uma diretiva @ MasterType que efetivamente a vincula para uma
nica pgina mestra (Master1.MASTER). Portanto, no ser possvel atribuir pginas mestras
dinamicamente para a Home Page e em vez disso voc vai poder trabalhar com outras pginas que voc
tiver criado.

2.
3.

No Solution Explorer, clique com o boto direito do mouse em About.aspx e


clique View Code para abrir o editor de cdigos.
Dentro da definio da classe, adicione o seguinte cdigo.
C#
void Page_PreInit(Object sender, EventArgs e) { if(Session["masterpage"] != null) {
this.MasterPageFile = (String) Session["masterpage"]; } }

O cdigo define o valor da propriedade MasterPageFile da pgina atual para o


valor na varivel de sesso, se houver. Este cdigo deve executar no
manipulador Page_PreInit; no pode ser executado em um manipulador que
ocorre em qualquer momento posterior que o manipulador Page_PreInit
(por exemplo, no manipulador Page_Init), porque a pgina mestra deve ser
estabelecida para que a pgina possa criar uma instncia dela antes de
qualquer inicializao adicional possa ocorrer.
Agora voc pode testar as pginas mestras dinmicas.
Para testar as pginas mestras dinmicas
1.

Na pgina About.aspx, pressione CTRL+F5 para executar a pgina.


A pgina exibida no navegador mesclada com sua pgina mestra padro,
Master1.MASTER.

2.

Clique no link Plain .


A pgina reexibida, neste momento mesclada com a Master2.master, que
no tem nenhuma cor de plano de fundo.

3.

Clique no link Colorful.


A pgina exibida usando a Master1.Master novamente.

Anotaes
H vrias outras questes que voc deve estar ciente ao trabalhar com pginas
mestras dinmicas:

O cenrio desta seo para alterar pginas mestras simplificada para


manter a explicao passo a passo focalizada em pginas mestras. Em um
aplicativo real, voc provavelmente deve exibir uma escolha dos layouts, e ento
guardar a preferncia do usurio usando perfis. Para obter detalhes, consulte
Viso geral sobre Propriedades de Perfil de ASP.NET.

Voc pode configurar seu site para todas as pginas usarem a mesmo pgina
mestra. Voc pode ter algumas pginas que devem usar uma pgina mestra
alternativa, que voc pode configurar no cdigo de uma maneira semelhante
mostrada nessa seo da explicao passo a passo. Para obter detalhes,

Visual Studio

157

consulte "Escopo de Pginas Mestres" em Viso Geral de Pginas Mestras de


ASP.NET.

Voc precisa adicionar o cdigo da pgina Home.aspx para cada pgina onde
voc deseja substituir a pgina mestra padro.
Prximas etapas

Esta explicao passo a passo ilustra a funcionalidade bsica de pginas mestras.


Voc pode desejar testar recursos adicionais de pginas mestras. Por exemplo,
voc pode desejar:

Criar pginas mestras que tm vrios espaos reservados de contedo. Em


seguida, voc pode preencher um ou mais espaos reservados com contedo
para cada pgina que voc exibir.

Definir espaos reservados contedo contedo padro. Se uma pgina


ASP.NET no fornece contedo para o espao reservado, a pgina mestra exibe
o contedo padro.

Programaticamente acessar membros da pgina mestra de pginas de


contedo. Isso permite que voc dinamicamente altere o aspecto da pgina
mestra em tempo de execuo. Para obter detalhes, consulte Como: Referenciar
o Contedo de Pginas Mestras ASP.NET.

Usar filtragem de dispositivos com pginas mestras para criar diferentes


layouts para diferentes dispositivos, como um layout para navegadores e outro
para um tipo especfico de telefone. Para obter detalhes, consulte Viso Geral
sobre Filtragem de Dispositivo ASP.NET.

Aprenda como voc pode colocar pginas mestras em pginas mestras para
criar partes em componentes. Para obter detalhes, consulte Pginas Mestras
ASP.NET Aninhadas.

Visual Studio

158

Passo-a-passo: personalizando um site


usando temas no Visual Studio
Esta explicao passo a passo ilustra como usar temas para aplicar uma aparncia
consistente a pginas e controles em seu site. Um tema pode incluir arquivos de
capa que definem um aspecto comum para controles individuais, uma ou mais
folhas de estilo e elementos grficos comuns para uso dos controles, como o
Controle TreeView Controle. Esta explicao passo a passo mostra como trabalhar
com temas ASP.NET em sites da Web
As tarefas ilustradas nesta explicao passo a passo incluem:

Aplicar temas predefinidos ASP.NET para pginas individuais e para o site


como um todo.

Criando seu prprio tema que inclui capas, que so usadas para definir o
aspecto dos controles individuais.
Pr-requisitos

Para concluir esta explicao passo a passo, ser necessrio:

Visual Web Developer Microsoft (Visual Studio).

O .NET Framework.
Criando o site da Web

Se voc j criou um site no Visual Web Developer (por exemplo, seguindo as


etapas no Passo-a-passo: Criando uma pgina da Web bsica em Visual Web
Developer), voc pode usar esse site e ir para a prxima seo. Caso contrrio, crie
um novo site e pgina seguindo estas etapas.
Para criar um site do sistema de arquivos
1.

Abra Visual Web Developer.

2.

No menu File, clique New Web Site.


A caixa de dilogo New Web Site aparece.

3.
4.

Em Visual Studio installed templates, clique em ASP.NET Web Site.


Na caixa Location, insira o nome da pasta onde voc deseja manter as
pginas do seu site.
Por exemplo, digite o nome da pasta C:\WebSites.

5.
6.

Na lista Language, clique na linguagem de programao que voc preferir


trabalhar.
Clique em OK.
O Visual Web Developer cria a pasta e uma nova pgina chamada
Default.aspx.

Para iniciar o trabalho com temas nesta explicao passo a passo, ir configurar um
controle Button, um controle Calendar, e um controle Label, para que voc possa
ver como esses controles so afetados por temas.
Para colocar controles na pgina
1.

Alterne para modo Design.

Visual Studio

159

2.

A partir do grupo Standarddo Toolbox, arraste um controle Calendar, um


controleButton, e um controle Label para a pgina. O layout exato da pgina
no importante.
Observao
No aplique qualquer formatao para qualquer um dos controles. Por exemplo, no use o comando
AutoFormat para definir o aspecto do controle Calendar.

3.
4.

Alterne para modo de origem.


Certifique-se de que o elemento <head> da pgina tem o atributo
runat="server" para que ela seja lida da seguinte maneira:
<head runat="server"></head>

5.

Salve a pgina.

Para testar a pgina, voc desejar ver a pgina antes de um tema ser aplicado, e
depois com diferentes temas.
Criando e aplicando um tema a uma pgina
O ASP.NET torna fcil aplicar um tema predefinido a uma pgina, ou criar um tema
exclusivo. (Para obter detalhes, consulte COMO: Definir temas ASP.NET.) Nesta
parte da explicao passo a passo, voc ir criar um tema com algumas capas
simples, que definem a aparncia dos controles.
Para criar um novo tema
1.

Em Visual Web Developer, clique com o boto direito do mouse no nome de


seu site, clique Add ASP.Net Folder, e em seguida, clique em Theme.
A pasta chamada App_Themes e uma subpasta chamada Theme1 so
criadas.

2.

Renomeie a pasta Theme1sampleTheme.


O nome desta pasta ser o nome do tema que voc criar (aqui,
sampleTheme). O nome exato no importante, mas voc tem que se
lembrar dele quando voc for aplicar o tema personalizado.

3.

Clique com o boto direito do mouse na pasta sampleTheme, selecione Add


New Item, adicione um novo arquivo de texto, e denomineosampleTheme.skin.

4.

No arquivo sampleTheme.skin, adicione definies de capa conforme


mostrado no exemplo de cdigo a seguir.
<asp:Label runat="server" ForeColor="red" Font-Size="14pt" Font-Names="Verdana" />
<asp:button runat="server" Borderstyle="Solid" Borderwidth="2px" Bordercolor="Blue"
Backcolor="yellow"/>

Observao
As caractersticas exatas que voc define so no importantes. Os valores da seleo anterior so
sugestes que sero mais bvias quando voc testar o tema posteriormente.
As definies de capa so semelhantes sintaxe para criao de um controle,
exceto que as definies incluem apenas configuraes que afetam a

Visual Studio

160

aparncia do controle. Por exemplo, as definies capa no incluem uma


configurao para a propriedade ID.
5.

Salve o arquivo de capa, e seguida, feche-o.

Agora voc pode testar a pgina antes de que qualquer temas seja aplicado.
Observao
Se voc adicionar um arquivo de folhas de estilo em cascata (CSS) para a sua pasta sampleTheme, ele
ser aplicado a todas as pginas que usam o tema.
Para testar temas
1.

Pressione CTRL+F5 para executar a pgina.


Os controles so exibidos com sua aparncia padro.

2.
3.

Feche o navegador, e depois retorne ao Visual Web Developer.


No modo de exibio origem, adicione o atributo a seguir para a diretiva
@ Page:
<%@ Page Theme="sampleTheme" ... %>

Observao
Voc deve indicar o nome de um tema real no valor do atributo (neste caso, o arquivo sampleTheme.skin
que voc definiu anteriormente).
4.

Pressione CTRL+F5 para executar a pgina novamente.


Desta vez, os controles so processados com o esquema de cores definido no
seu tema.
Os controles Label e Button sero exibidos com as configuraes feitas no
arquivo sampleTheme.skin. Porque voc no foi criou uma entrada no arquivo
sampleTheme.skin para o controle Calendar, ele ser exibido com a
aparncia padro.

5.
6.

Em Visual Web Developer, defina o tema com o nome de outro tema, se


disponvel.
Pressione CTRL+F5 para executar a pgina novamente.
Os controles alteraro sua aparncia novamente.

Temas de Folhas de Estilo vs. Personalizao de Temas


Aps ter criado seu tema, voc pode adaptar como ele usado no seu aplicativo
associando-o com a pgina tanto como um tema personalizado (como feito na
seo anterior), ou como um tema de folhas de estilo. Um tema de folhas de estilo
usa os mesmos arquivos de tema como um tema personalizado, mas sua prioridade
nos controles e propriedades da pgina inferior, equivalente a um arquivo CSS.
No ASP.NET, a ordem de prioridade :

Configuraes de temas, incluindo temas definidos em seu arquivo


Web.config.

Configuraes de pgina local.

Configuraes de Temas de Folhas de Estilo.

Visual Studio

161

Quanto a isso, se voc optar por usar um tema de folhas de estilo, as propriedades
do seu tema sero substitudas por qualquer coisa declarada localmente na pgina.
Da mesma forma, se voc usar um tema personalizado, as propriedades do seu
tema iro substituir qualquer coisa dentro a pgina local, e tambm em qualquer
tema de folhas de estilo em uso.
Para usar um tema de folhas de estilo e consultar ordem de prioridade
1.

Alterne para modo de origem.

2.

Altere a declarao da pgina:


<%@ Page theme="sampleTheme" %>

Para uma declarao de tema de folhas de estilo:


<%@ Page StyleSheetTheme="sampleTheme" %>

3.

Pressione CTRL+F5 para executar a pgina.


Observe que a propriedade ForeColor do controle Label1 est vermelho.

4.

Alternar para modo Design.

5.

Selecione Label1 e, em Properties, defina ForeColor como blue.

6.

Pressione CTRL+F5 para executar a pgina.


A propriedade ForeColor de Label1 fica azul.

7.
8.

Alterne para modo de origem.


Altere a declarao da pgina para declarar um tema, em vez de um tema de
folhas de estilo, alterando:
<%@ Page StyleSheetTheme="sampleTheme" %>

De volta para:
<%@ Page Theme="sampleTheme" %>

9.

Pressione CTRL+F5 para executar a pgina.


A propriedade ForeColor de Label1 estar vermelho novamente.

Baseando um tema personalizado em controles existente


Uma maneira fcil para criar definies de capa usar o designer para definir as
propriedades de aparncia, e ento copiar a definio de controle em um arquivo
de capas.
Para basear um tema personalizado em controles existentes
1.

No modo Design, defina a propriedades do controle Calendar para que o


controle tenha um aspecto diferente. As configuraes a seguir so
sugestes:

BackColor

Cyan

BorderColor

Red

BorderWidth

CellSpacing

Font-Name

Arial

Font-Size

SelectedDayStyle-BackColor

Large

Visual Studio

Red

162

SelectedDayStyle-ForeColor

TodayDayStyle-BackColor

Yellow

Pink

Observao
As caractersticas exatas que voc definir no so importantes. Os valores da lista anterior so sugestes
que sero mais bvios quando voc testar o tema posteriormente.
2.

Alterne para o modo de origem e copie o elemento<asp:calendar> e seus


atributos.

3.

Alterne para ou abra o arquivo sampleTheme.skin.

4.

Cole a definio do controle Calendar no arquivo sampleTheme.skin.

5.

Remova a propriedade ID da definio no arquivo sampleTheme.skin.

6.

Salve o arquivo sampleTheme.skin.

7.
8.

Alterne para a pgina Default.aspx, e arraste um segundo controle Calendar


para a pgina. No defina qualquer outra de suas propriedades.
Execute a pgina Default.aspx.
Ambos os controles Calendar iro aparentar o mesmo. O primeiro controle
Calendar reflete as configuraes que voc fez nas propriedades
explicitamente. O segundo controle Calendar herda suas propriedades de
aparncia da definio de capa que voc fez no arquivo sampleTheme.skin.

Aplicando temas a um site


Voc pode aplicar um tema a um site inteiro, que significa que voc no precisa
reaplicar o tema a pginas individuais. (Se voc desejar, voc pode substituir as
configuraes dos temas em uma pgina.)
Para configurar um tema para um site
1.

Crie um arquivo Web.config se um no foi adicionado automaticamente ao


seu site, seguindo etapas seguintes:
1.
2.

No Solution Explorer, clique com o boto direito do mouse no nome do


site, e clique Add New Item.
Em Templates, selecione Web Configuration File, e clique Add.
Observao Voc no precisa escrever um nome, porque o arquivo
denominado sempre de Web.config.

2.
3.

Adicione o elemento <pages> se ele ainda no existir. O elemento


<pages> deve aparecer dentro do elemento <system.web>.
Adicionar o seguinte atributo ao elemento <pages>.
<pages theme="sampleTheme" />

Observao
Web.config diferencia maisculas de minsculas e os valores esto caixa-mista (alta e baixa). (Por
exemplo: tema e styleSheetTheme).
4.

Salve e feche o arquivo Web.config.

Visual Studio

163

5.

Alterne para Default.aspx e alterne para o modo de origem.

6.

Remova o atributo theme="themeName" da declarao de sua pgina.

7.

Pressione CTRL+F5 para executar Default.aspx.


Agora a pgina exibida com o tema que voc especificou no arquivo
Web.config.

Se voc optar por especificar um nome de tema na declarao de sua pgina, ele
substituir qualquer tema especificado no seu arquivo Web.config.
Prximas etapas
O suporte ASP.NET para temas oferece uma variedade de opes para adaptar do
aspecto e percepo de um aplicativo inteiro. Esta explicao passo a passo
abordou algumas das noes bsicas, mas voc pode estar interessado em
aprender mais. Por exemplo, pode desejar aprender mais sobre:

Uso de temas em geral. Para mais informaes, consulte Viso geral sobre
temas e capas ASP.NET

Criar seus prprios temas e capas. Para mais informaes, consulte COMO:
Definir temas ASP.NET

Usando temas com cdigo. Para mais informaes, consulte COMO: aplicar
temas ASP.NET Programaticamente

Visual Studio

164

Explicao passo a passo: Criando uma


pgina Web Parts no Visual Web
Developer
Esta explicao passo a passo uma demonstrao prtica dos componentes e
tarefas essenciais para criar pginas da Web que usam controles Web Parts em
uma ferramenta de design visual como o Microsoft Visual Studio.
Em vrios aplicativos da Web til ser capaz de alterar a aparncia do contedo,
bem como permitir que os usurios selecionem e organizem o contedo que
desejam ver. O recurso Web Parts do ASP.NET consiste de um conjunto de
controles para criar pginas da Web que apresentam contedo modular e que
permitem a usurios alterar a aparncia e o contedo para atender a suas
preferncias. Para obter uma introduo geral a Web Parts, consulte Viso geral
sobre Web Parts do ASP.NET. Para uma viso geral dos componentes principais do
conjunto de controles Web Parts, vrios dos quais so usados nesta explicao
passo a passo, consulte Viso geral sobre controles Web Parts.
Durante esta explicao passo a passo, voc criar uma pgina que usa o conjunto
de controles Web Parts para criar uma pgina da Web que o usurio pode modificar
ou personalizar. As tarefas apresentadas nesta explicao passo a passo incluem:

Adicionar controles Web Parts a uma pgina.

Criar um controle de usurio personalizado e us-lo como um controle Web


Parts.

Permitir que os usurios personalizem o leiaute dos controles Web Parts na


pgina.

Permitir que os usurios editem a aparncia de um controle Web Parts.

Permitir que os usurios selecionem um controle de um catlogo de controles


Web Parts disponveis.
Pr-requisitos

Para concluir esta explicao passo a passo, ser necessrio:

Um site que possa identificar usurios individuais. Se voc tiver um site j


configurado com participao (membership) do ASP.NET, voc pode usar esse
site como um ponto de partida para esta explicao passo a passo. Caso
contrrio, a explicao passo a passo fornece instrues sobre como configurar
seu site para identific-lo por seu nome de conta de usurio do Windows.

Um ambiente de design visual para criar pginas da Web. Esta explicao


passo a passo usa o Visual Studio.

Um provedor de personalizao configurado e um banco de dados.


Personalizao de Web Parts ativada por padro e usa o provedor de
personalizao SQL (SqlPersonalizationProvider) do Microsoft SQL Server
Express Edition para armazenar os dados de personalizao. Esta explicao
passo a passo usa o SSE e o provedor SQL padro. Se voc tiver o SSE
instalado, nenhuma configurao ser necessria. O SSE est disponvel com o
Microsoft Visual Studio 2005 como uma parte opcional da instalao ou como um
download gratuito de Microsoft.com. Para usar uma das verses completas do
SQL Server, voc deve instalar e configurar um banco de dados de servios de
aplicativos ASP.NET e configurar o provedor de personalizao SQL para se

Visual Studio

165

conectar a este banco de dados. Para obter detalhes, consulte Criar e configurar
o banco de dados de servios de aplicativos para o SQL Server.
Criar e configurar um site da Web
Esta explicao passo a passo requer que voc tenha uma identidade de usurio,
para que suas configuraes Web Parts possam ser mapeadas para voc. Se voc
j tiver um site configurado para usar associao (membership), recomendvel
que voc use esse site. Caso contrrio, voc pode criar um novo site e usar seu
nome de usurio do Windows atual como a identidade do usurio.
Para criar um novo site

No Visual Studio, crie um novo site da Web do ASP.NET. Para obter detalhes,
consulte Explicao passo a passo: Criar um site com associao (mebership) e
login de usurio (Visual Studio).
Criando uma pgina simples com Web Parts

Nesta parte da explicao passo a passo, voc vai criar uma pgina que usa
controles Web Parts para mostrar contedo esttico. A primeira etapa para
trabalhar com Web Parts consiste em criar uma pgina com dois elementos
estruturais necessrios. Primeiro, uma pgina Web Parts precisa de um controle
WebPartManager para controlar e coordenar todos os controles Web Parts.
Segundo, uma pgina Web Parts precisa de uma ou mais zonas, que so controles
compostos que contm controles WebPart ou outros controles de servidor e ocupam
uma regio especificada de uma pgina.
Observao
Voc no precisa fazer nada para permitir personalizao de Web Parts; esta ativada por padro para o
conjunto de controles Web Parts. Na primeira vez que executar uma pgina Web Parts em um site, o
ASP.NET configura um provedor de personalizao padro para armazenar as configuraes de
personalizao do usurio. Para obter mais informaes sobre personalizao, consulte Viso geral sobre
personalizao Web Parts.
Para criar uma pgina para conter controles Web Parts
1.

Feche a pgina padro e adicione uma nova pgina ao site, chamada


WebPartsDemo.aspx.

2.

Alterne para o modo de exibio Design.

3.

A partir do menu View, certifique-se de que as opes Non-Visual Controls


e Details esto selecionadas para que voc possa ver marcas de layout e
controles que no tm uma interface de usurio

4.

Coloque o ponto de insero antes das marcas <div> na superfcie de design


e pressione ENTER para adicionar uma nova linha.

5.

Posicione o ponto de insero antes do caractere de nova linha. Selecione a


opo Heading 1 na lista Block Format na barra de ferramentas, adicione o
texto Web Parts Demonstration Page.

6.

Na guia WebParts da caixa de ferramentas, arraste um controle


WebPartManager para a pgina, posicionando-o logo aps o caractere de
nova linha e antes das marcas <div>.
O controle WebPartManager no gera nenhuma sada, ento ele aparece
como uma caixa cinza na superfcie de design.

Visual Studio

166

7.

Posicione o ponto de insero nas marcas <div>.

8.

No menu Layout, clique em Insert Table e crie uma nova tabela que tenha
uma linha e trs colunas. Clique no boto Cell Properties, selecione top da
lista drop-down Vertical align, clique em OK e clique em OK novamente
para criar a tabela.

9.

Arraste um controle WebPartZone para a coluna esquerda da tabela. Clique


com o boto direito do mouse no controle WebPartZone, escolha
Properties e defina as propriedades a seguir:
ID: SidebarZone
HeaderText: Sidebar

10. Arraste um segundo controle WebPartZone para a coluna do meio da tabela


e defina as seguintes propriedades:
ID: MainZone
HeaderText: Main

11. Salve o arquivo.


A pgina agora tem duas zonas diferentes que voc pode controlar separadamente.
No entanto, nenhuma das zonas tem qualquer contedo, ento criar o contedo a
prxima etapa. Para esta explicao passo a passo, voc trabalhar com controles
Web Parts que exibem apenas contedo esttico.
O layout de uma zona Web Parts especificado por um elemento
<zonetemplate>. Dentro do modelo da zona, voc pode adicionar qualquer
controle ASP.NET, quer seja um controle Web Parts personalizado, um controle de
usurio ou um controle de servidor j existente. Observe que aqui voc est
usando o controle Label, ao qual voc est simplesmente adicionando texto
esttico. Quando voc coloca um controle de servidor em uma zona
WebPartZone, o ASP.NET trata o controle como um controle Web Parts em tempo
de execuo, o que habilita recursos Web Parts no controle.
Para criar contedo para a zona principal
1.

2.

No modo de exibio Design, arraste um controle Label da guia Standard


da caixa de ferramentas para a rea de contedo da zona cuja propriedade
ID estiver definida como MainZone.
Alterne para o modo de visualizao Source.
Observe que um elemento <zonetemplate> foi adicionado para ajustar o
controle Label na MainZone.

3.

Adicione um atributo chamado title ao elemento <asp:label> e defina seu


valor como Content. Remova o atributo Text="Label" do elemento
<asp:label>. Dentro do elemento <asp:label>, adicione algum texto como
<h2>Welcome to my Home Page</h2>. Seu cdigo deve se parecer com
o a seguir.
<asp:webpartzone id="MainZone" runat="server" headertext="Main"> <zonetemplate>
<asp:label id="Label1" runat="server" title="Content"> <h2>Welcome to My Home Page</h2>
</asp:label> </zonetemplate> </asp:webpartzone>

4.

Salve o arquivo.

Depois, crie um controle de usurio que tambm pode ser adicionado pgina
como um controle Web Parts.

Visual Studio

167

Para criar um controle de usurio


1.

Adicione um novo controle de usurio da Web ao seu site para servir como
um controle de pesquisa denominado SearchUserControl.ascx, certificando-se que
a opo Place source code in a separate file est desmarcada.
Observao
O controle de usurio para esta explicao passo a passo no implementa a funcionalidade de pesquisa de
verdade; ele usado somente para demonstrar os recursos Web Parts.

2.

Alterne para o modo de exibio Design.

3.

Na guia Standard da caixa de ferramentas, arraste um controle TextBox


para a pgina.

4.

Coloque o ponto de insero aps a caixa de texto que voc adicionou e


pressione ENTER para adicionar uma nova linha.

5.

Arraste um controle Button para a pgina na nova linha abaixo da caixa de


texto que voc adicionou.

6.

Alterne para o modo de exibio Source e certifique-se que o cdigo fonte


para o controle de usurio parece com o exemplo a seguir:
C#
<%@ control language="C#" classname="SearchUserControl" %> <asp:textbox runat="server"
id=" TextBox1"></asp:textbox> <br /> <asp:button runat="server" id=" Button1" text="Search"
/>

7.

Salve e feche o arquivo.


Observao de segurana
Esse controle tem uma caixa de texto que aceita entrada do usurio, o que uma ameaa potencial de
segurana. Dados entrados pelo usurio em uma pgina da Web potencialmente pode conter scripts de
cliente mal intencionados. Por padro, pginas da Web do ASP.NET validam a entrada do usurio para
garantir que a entrada no contenha elementos HTML ou script. Enquanto essa validao estiver ativada,
voc no precisa verificar explicitamente se h elementos HTML ou scripts nos dados entrados pelo
usurio. Para mais informaes, consulte Viso geral sobre scripts maliciosos.

Agora voc pode adicionar controles Web Parts zona Sidebar. Voc vai adicionar
dois controles zona Sidebar, um contendo uma lista de links e outro que o
controle de usurio que voc criou no procedimento anterior. Os vnculos so
adicionados como um controle de servidor padro Label, semelhante ao modo com
que voc criou o texto esttico para a zona principal. Entretanto, embora os
controles de servidor individuais contidos no controle de usurio pudessem estar
contidos diretamente na zona (como o controle de rtulo), nesse caso eles no
esto. Em vez disso, eles fazem parte do controle de usurio que voc criou no
procedimento anterior. Isso demonstra uma maneira comum de empacotar
controles e funcionalidade adicionais que voc deseje em um controle de usurio e
depois referenciar tal controle em uma zona como um controle Web Parts.
Em tempo de execuo, o conjunto de controles Web Parts envolve ambos os
controles com controles GenericWebPart. Quando um controle GenericWebPart
envolve um controle do servidor Web, o controle da parte genrica o controle pai

Visual Studio

168

e voc pode acessar o controle de servidor atravs da propriedade ChildControl do


controle pai. Esse uso de controles de parte genrica permite que controles de
servidor da Web padro tenham o mesmo comportamento bsico e atributos que
controles Web Parts que derivam da classe WebPart.
Para adicionar controles Web Parts zona da barra lateral
1.

Abra a pgina WebPartsDemo.aspx.

2.

Alterne para o modo de exibio Design.

3.

Arraste a pgina de controle de usurio que voc criou, SearchUserControl.ascx,


do Solution Explorer para a zona cuja propriedade ID estiver definida como
SidebarZone.

4.

Salve a pgina WebPartsDemo.aspx.

5.

Alterne para o modo de visualizao Source.

6.

Dentro do elemento <asp:webpartzone> da SidebarZone, adicione um


elemento <asp:label> com contendo links, adicione tambm um atributo Title com
um valor de Search marca de controle de usurio, conforme mostrado no exemplo a seguir:

<asp:WebPartZone id="SidebarZone" runat="server" headertext="Sidebar"> <zonetemplate>


<asp:label runat="server" id="linksPart" title="My Links"> <a
href="http://www.asp.net">ASP.NET site</a> <br /> <a
href="http://www.gotdotnet.com">GotDotNet</a> <br /> <a
href="http://www.contoso.com">Contoso.com</a> <br /> </asp:label> <uc1:SearchUserControl
id="searchPart" runat="server" title="Search" /> </zonetemplate> </asp:WebPartZone>
7.

Salve e feche o arquivo.

Agora voc pode testar sua pgina.


Para testar a pgina

Carregue a pgina em um navegador.


A pgina exibe as duas zonas. A tela a seguir mostra a pgina.
Demonstrao de Web Parts com duas zonas

Na barra de ttulo de cada controle h uma seta para baixo que fornece acesso a
um menu de aes disponveis que podem ser executadas em um controle.
Clique no menu de verbos para um dos controles, clique no verbo Minimize e
note que o controle minimizado. No menu de verbos, clique em Restore e o
controle retornar ao seu tamanho normal.
Habilitando usurios para editar pginas e alterar layout
Web Parts fornece a funcionalidade para usurios alterarem o layout de controles
Web Parts arrastando-os de uma zona para outra. Alm de permitir que os usurios
movam controles WebPart de uma zona para outra, voc pode permitir que
usurios editem vrias caractersticas dos controles, inclusive sua aparncia, layout
e comportamento. O conjunto de controles Web Parts fornece a funcionalidade
bsica para a edio de controles WebPart. Embora voc no faa isso nesta
explicao passo a passo, voc tambm pode criar controles de edio
personalizados que permitem que os usurios editem os recursos dos controles
WebPart. Assim como alterar a localidade de um controle WebPart, editar as
propriedades de um controle depende da personalizao do ASP.NET para salvar as
alteraes feitas pelos usurios.

Visual Studio

169

Nesta parte da explicao passo a passo, voc adicionar o recurso que permite aos usurios editar as
caractersticas bsicas de qualquer controle WebPart em a pgina. Para ativar esses recursos, voc
adicionar outro controle de usurio personalizado pgina, juntamente com um elemento
<asp:editorzone> e dois controles de edio.
Para criar um controle de usurio que permita modificaes do layout da pgina
1.

No Visual Studio, no menu File, clique em New e ento em File.

2.

Na caixa de dilogo Add New Item, selecione Web User Control. Nomeie o novo arquivo
DisplayModeMenu.ascx. Desmarque a caixa de opo Place source code in separate file.

3.

Clique em Add para criar o novo controle.

4.

Alterne para o modo de visualizao Source.

5.

Remova todo o cdigo existente no novo arquivo e cole neste o cdigo a seguir. Este cdigo de
controle de usurio usa recursos do conjunto de controles Web Parts para permitir que uma
pgina tenha seu modo de exibio ou visualizao alterado, e tambm permite que voc altere a
aparncia fsica e o layout da pgina quando estiver em certos modos de exibio.
C#
<%@ control language="C#" classname="DisplayModeMenuCS"%> <script runat="server"> //
Use a field to reference the current WebPartManager control. WebPartManager _manager; void
Page_Init(object sender, EventArgs e) { Page.InitComplete += new EventHandler(InitComplete);
} void InitComplete(object sender, System.EventArgs e) { _manager =
WebPartManager.GetCurrentWebPartManager(Page); String browseModeName =
WebPartManager.BrowseDisplayMode.Name; // Fill the drop-down list with the names of
supported display modes. foreach (WebPartDisplayMode mode in
_manager.SupportedDisplayModes) { String modeName = mode.Name; // Make sure a mode is
enabled before adding it. if (mode.IsEnabled(_manager)) { ListItem item = new
ListItem(modeName, modeName); DisplayModeDropdown.Items.Add(item); } } // If Shared
scope is allowed for this user, display the // scope-switching UI and select the appropriate radio //
button for the current user scope. if (_manager.Personalization.CanEnterSharedScope) {
Panel2.Visible = true; if (_manager.Personalization.Scope == PersonalizationScope.User)
RadioButton1.Checked = true; else RadioButton2.Checked = true; } } // Change the page to the
selected display mode. void DisplayModeDropdown_SelectedIndexChanged(object sender,
EventArgs e) { String selectedMode = DisplayModeDropdown.SelectedValue;
WebPartDisplayMode mode = _manager.SupportedDisplayModes[selectedMode]; if (mode !=
null) _manager.DisplayMode = mode; } // Set the selected item equal to the current display mode.
void Page_PreRender(object sender, EventArgs e) { ListItemCollection items =
DisplayModeDropdown.Items; int selectedIndex =
items.IndexOf(items.FindByText(_manager.DisplayMode.Name));
DisplayModeDropdown.SelectedIndex = selectedIndex; } // Reset all of a user's personalization
data for the page. protected void LinkButton1_Click(object sender, EventArgs e) {
_manager.Personalization.ResetPersonalizationState(); } // If not in User personalization scope,
toggle into it. protected void RadioButton1_CheckedChanged(object sender, EventArgs e) { if
(_manager.Personalization.Scope == PersonalizationScope.Shared)
_manager.Personalization.ToggleScope(); } // If not in Shared scope, and if user has permission,
toggle // the scope. protected void RadioButton2_CheckedChanged(object sender, EventArgs e) {
if (_manager.Personalization.CanEnterSharedScope && _manager.Personalization.Scope ==
PersonalizationScope.User) _manager.Personalization.ToggleScope(); } </script> <div>

Visual Studio

170

<asp:Panel ID="Panel1" runat="server" Borderwidth="1" Width="230" BackColor="lightgray"


Font-Names="Verdana, Arial, Sans Serif" > <asp:Label ID="Label1" runat="server"
Text="&nbsp;Display Mode" Font-Bold="true" Font-Size="8" Width="120" />
<asp:DropDownList ID="DisplayModeDropdown" runat="server" AutoPostBack="true"
Width="120" OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
<asp:LinkButton ID="LinkButton1" runat="server" Text="Reset User State" ToolTip="Reset the
current user's personalization data for the page." Font-Size="8" OnClick="LinkButton1_Click" />
<asp:Panel ID="Panel2" runat="server" GroupingText="Personalization Scope" Font-Bold="true"
Font-Size="8" Visible="false" > <asp:RadioButton ID="RadioButton1" runat="server"
Text="User" AutoPostBack="true" GroupName="Scope"
OnCheckedChanged="RadioButton1_CheckedChanged" /> <asp:RadioButton ID="RadioButton2"
runat="server" Text="Shared" AutoPostBack="true" GroupName="Scope"
OnCheckedChanged="RadioButton2_CheckedChanged" /> </asp:Panel> </asp:Panel> </div>
6.

Salve o arquivo, clicando no cone de gravao na barra de ferramentas, ou selecionando Save no


menu File.

Para permitir que os usurios alterem o layout


1.

Abra a pgina WebPartsDemo.aspx.

2.

Alterne para o modo de exibio Design.

3.

Posicione o ponto de insero imediatamente aps o controle WebPartManager que voc


adicionou anteriormente. Digite ENTER para criar uma linha em branco aps o controle
WebPartManager.

4.

Arraste o controle de usurio recm-criado (DisplayModeMenu.ascx) para a pgina


WebPartsDemo.aspx e solte-o na linha em branco.

5.

Arraste um controle EditorZone da seo WebParts da caixa de ferramentas para a clula aberta
restante da tabela na pgina WebPartsDemo.aspx.

6.

A partir da seo WebParts da caixa de ferramentas, arraste um controle AppearanceEditorPart


e um controle LayoutEditorPart para o controle EditorZone.

7.

Alterne para o modo de visualizao Source.


O cdigo resultante na clula da tabela deve ter aspecto semelhante ao do cdigo a seguir.
<td valign="top"> <asp:EditorZone ID="EditorZone1" runat="server"> <ZoneTemplate>
<asp:AppearanceEditorPart ID="AppearanceEditorPart1" runat="server" />
<asp:LayoutEditorPart ID="LayoutEditorPart1" runat="server" /> </ZoneTemplate>
</asp:EditorZone> </td>

Observao
Embora os controles AppearanceEditorPart e LayoutEditorPart sejam usados nesta explicao passo a
passo, os controles PropertyGridEditorPart e BehaviorEditorPart no so, pois eles requerem
configuraes alm do escopo desta explicao passo a passo.
8.

Grave o arquivo WebPartsDemo.aspx.

Voc criou um controle de usurio que permite que voc altere os modos de exibio e o layout da pgina
e voc referenciou o controle na pgina da Web primria.
Agora voc pode testar a funcionalidade de editar pginas e alterar layout.

Visual Studio

171

Para testar alteraes de layout


1.

Carregue a pgina em um navegador.

2.

No menu Display Mode, clique em Edit.


Os ttulos de zona so exibidos.

3.

Arraste o controle My Links pela sua barra de ttulo a partir da zona Sidebar para a parte inferior
da zona Main.
Sua pgina deve ter aspecto como o da seguinte tela:
Demonstrao de pgina Web Parts com o controle My Links movido

4.

Clique em Display Mode, e depois clique em Browse.


A pgina ser atualizada, os nomes de zona desaparecem e o controle My Links permanecer
onde voc o posicionou.

5.

Para demonstrar que a personalizao est funcionando, feche o navegador, e em seguida,


carregue a pgina novamente. As alteraes feitas so salvas para sesses futuras do navegador.

6.

No menu Display Mode, clique em Edit.


Agora cada controle na pgina exibido com uma seta para baixo na sua barra de ttulo, a qual
contm o menu drop-down de verbos.

7.

Clique na seta para exibir o menu de verbos sobre o controle My Links, e ento clique em Edit.
O controle EditorZone aparecer, exibindo os controles EditorPart que voc adicionou.

8.

Na seo Appearance do controle de edio, altere o Title para My Favorites. Na lista


Chrome Type, selecione Title Only e, em seguida, clique em Apply.
A tela a seguir mostra a pgina no modo de edio
Demonstrao de pgina Web Parts no modo de edio

9.

Clique no menu Display Mode, depois clique em Browse para retornar para o modo de
navegao.
O controle agora tem um ttulo atualizado e nenhuma borda, como mostrado na tela a seguir.
Demonstrao de pgina Web Parts editada

Adicionar Web Parts em tempo de execuo


Voc tambm pode permitir que usurios adicionem controles Web Parts suas pginas em tempo de
execuo. Para fazer isso, configure a pgina com um catlogo Web Parts, que contm uma lista dos
controles Web Parts que voc deseja tornar disponveis para os usurios.

Observao
Nesta explicao passo a passo, voc criar um modelo contendo os controles FileUpload e Calendar. Isso
permitir que voc teste a funcionalidade bsica do catlogo, mas os controles Web Parts resultantes no
tm qualquer funcionalidade real. Se voc tiver uma pgina da Web ou controle de usurio
personalizados, voc pode substituir o contedo esttico por eles.
Para permitir que os usurios adicionem Web Parts em tempo de execuo
1.

Abra a pgina WebPartsDemo.aspx.

Visual Studio

172

2.

Alterne para o modo de exibio Design.

3.

Na guia WebParts da caixa de ferramentas, arraste um controle CatalogZone para a coluna


direita da tabela, sob o controle EditorZone.
Ambos os controles podem estar na mesma clula da tabela pois eles no sero exibidos ao mesmo
tempo.

4.

No painel Properties, atribuia a seqncia Add Web Parts para a propriedade HeaderText do
controle CatalogZone.

5.

A partir da seo WebParts da caixa de ferramentas, arraste um controle DeclarativeCatalogPart


para a rea de contedo do controle CatalogZone.

6.

Clique na seta no canto direito superior do controle DeclarativeCatalogPart para expor seu
menu Tasks, e selecione Edit Templates.

7.

A partir da seo Standard da caixa de ferramentas, arraste um controle FileUpload e um


controle Calendar para a seo WebPartsTemplate do controle DeclarativeCatalogPart.

8.

Alterne para o modo de visualizao Source. Inspecione o cdigo fonte do elemento


<asp:catalogzone>.
Observe que o controle DeclarativeCatalogPart contm um elemento <webpartstemplate>
com os dois controles de servidor includos que voc poder adicionar sua pgina a partir do
catlogo.

Observao
Se voc tiver um controle personalizado, este o local para substituir um dos controles servidor do
exemplo por ele, embora isso necessite de etapas alm do escopo desta explicao passo a passo. Para
obter mais detalhes, consulte o exemplo de cdigo na documentao para a classe WebPart.
9.

Adicione uma propriedade Title a cada um dos controles adicionados ao catlogo, usando o valor
de seqncia de caracteres mostrado para cada ttulo no exemplo de cdigo abaixo. Embora o
ttulo no seja uma propriedade que normalmente voc possa definir nesses dois controles de
servidor em tempo de design, quando um usurio adiciona esses controles a uma zona
WebPartZone a partir do catlogo em tempo de execuo, eles so empacotados por um controle
GenericWebPart. Isso permite que eles atuem como controles Web Parts, portanto, eles
podero exibir ttulos.
O cdigo para os dois controles contidos no controle DeclarativeCatalogPart devem ter aspecto
como a seguir.
<asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1" runat="server">
<WebPartsTemplate> <asp:Calendar ID="Calendar1" runat="server" title="My Calendar" />
<asp:FileUpload ID="FileUpload1" runat="server" title="Upload Files" /> </WebPartsTemplate>
</asp:DeclarativeCatalogPart>

10. Salve a pgina.


Agora voc pode testar o catlogo.
Para testar o catlogo Web Parts
1.

Carregue a pgina em um navegador.

2.

No menu Display Mode, clique em Catalog.


O catlogo intitulado Add Web Parts exibido.

3.

Arraste o controle My Favorites da zona Main de volta para o parte superior da zona Sidebar.

Visual Studio

173

4.

No catlogo Add Web Parts, selecione as duas caixas de seleo e ento selecione Main na lista
de zonas disponveis.

5.

Clique em Add no catlogo.


Os controles so adicionados zone Main. Se voc desejar, voc pode adicionar vrias ocorrncias
dos controles do catlogo sua pgina. As telas a seguir mostram a pgina com o controle de envio
de arquivo e o calendrio na zona Main:
Controles adicionados zona Main do catlogo

6.

No menu Display Mode, clique em Browse.


O catlogo desaparece e a pgina atualizada.

7.

Feche o navegador e carregue a pgina novamente.


As alteraes feitas vo persistir.

Prximas etapas
Esta explicao passo a passo ilustrou os princpios bsicos do uso de controles Web Parts simples em um
pgina da Web do ASP.NET. Voc pode desejar testar recursos Web Parts adicionais, mais sofisticados.
Sugestes para exploraes adicionais incluem:

Criar controles Web Parts que ofeream funcionalidades mais sofisticadas que as Web Parts
estticas desta explicao passo a passo. Voc pode criar controles Web Parts como controles de
usurio ou controles personalizados. Para obter detalhes, consulte a documentao para a classe
WebPart.

Visual Studio

174

Explicao Passo a Passo: Criando um


Site Web com Associao e Login de
Usurio (Visual Studio)
Um requisito comum para sites Web permitir que somente alguns membros ou
outros usurios autenticados vejam determinadas pginas. Nesse caso, o aplicativo
deve solicitar um nome e uma senha para o usurio. O aplicativo tambm deve
incluir uma maneira para ocultar informaes de usurios annimos (usurios que
no esto autorizados). Esta explicao passo a passo mostra como usar os
controles do ASP.NET e servios de associao do ASP.NET para criar um aplicativo
que executa todas essas tarefas. Para mais informaes, consulte Introduo a
Associao.
As tarefas ilustradas nesta explicao passa a passo incluem:

Configurar um aplicativo para incluir os servios de associao do ASP.NET e


como definir os usurios.

Usar os controles de login para obter credenciais de usurio e exibir


informao para os usurios autorizados.

Proteger uma ou mais pginas em seu aplicativo para que somente os


usurios autorizados possam v-las.

Permitir que usurios novos se registrem em seu site.

Permitir que os membros alterem e redefinam suas senhas.


Pr-requisitos

Para concluir esta explicao passo a passo, voc precisar de :

MIcrosoft Visual Web Develper.

Microsoft Internet Information Services (IIS) instalado localmente em seu


computador.

Microsoft Data Access Components (MDAC) verso 2.7 ou posterior. Se voc


estiver usando o Microsoft Windows XP ou Windows Server 2003, voc j tem
MDAC 2.7. Entretanto, se voc estiver usando o Microsoft Windows 2000, voc
pode precisar atualizar o MDAC j instalado no seu computador. Para obter mais
informaes, consulte o artigo "Instalao do Microsoft Data Access Components
(MDAC)" na biblioteca MSDN.

Acesso a um servidor de email que pode encaminhar mensagens de email.


(O servidor no precisa ter capacidade para receber mensagens.) O IIS inclui o
servidor virtual Default SMTP, um servidor de email que adequado para esta
explicao passo a passo. Para obter mais informaes sobre configurao do
servidor, consulte HOW TO: Instalar e Configurar Servidores Virtuais SMTP em
IIS. Se voc estiver trabalhando em uma rede local, contate o seu administrador
de rede para obter informao sobre o acesso a um servidor de email.
Criando o Site Web

Se voc j criou um site Web no Microsoft Visual Studio (por exemplo, trabalhando
com o tpico Explicao Passo a Passo: Criando uma Pgina Web Bsica no Visual
Web Developer), voc pode usar esse site Web e ir para "Configurando Associao"
posteriormente nesta explicao passo a passo. Caso contrrio, crie um novo site
Web e uma pgina seguindo estas etapas.

Visual Studio

175

Para criar um site Web local no IIS


1.

Abrir o Visual Studio.

2.

No menu File, clique em New Web Site.


A caixa de dilogo New Web Site aparece.

3.

Sob oVisual Studio installed templates, selecione o ASP.NET Web Site.

4.

Na caixa de listagem Location , selecione HTTP. Clique em Browse.


A caixa de dilogo Choose Location aparece.

5.

Selecione Local IIS.

6.

Abra o Local Web Servers.

7.

Selecione o Default Web Site.

8.

Clique no cone Create New Web Application (

) acima da lista de sites

Web e em seguida, nomeie a associao do novo site Web.


9.

Clique em Open.
A caixa de dilogo Choose Location fecha.

10. Na caixa Languages, clique a linguagem de programao com a qual voc


prefere trabalhar.
A linguagem de programao que voc escolher ser o padro para seu site
Web, mas voc pode definir as linguagens de programao para cada pgina
individualmente.
11. Clique em OK na caixa de dilogo New Web Site.
O Visual Web Developer cria o site Web e uma nova pgina chamada
Default.aspx.
Configurando a Associao
Posteriormente nesta explicao passo a passo voc colocar pginas em um
subdiretrio protegido. Voc deve criar o subdiretrio agora para que voc possa
configurar a segurana para ele posteriormente na explicao passo a passo.
Para adicionar uma nova pasta ao site Web
1.
2.

No Solution Explorer, clique com o boto direito do mouse no nome do seu


site Web e clique em New Folder.
Nomear uma pasta MemberPages.

Antes de voc trabalhar com a associao do ASP.NET, voc deve configurar seu
aplicativo para ativar a associao e configurar os usurios. Voc pode usar a
ferramenta Web Site Administration, que fornece uma interface do tipo assistente
para realizar esta configurao.
Para esta explicao passo a passo, voc definir um nico usurio.
Para criar um usurio da associao
1.
2.
3.

No menu Website, clique em ASP.NET Configuration.


Selecione o guia Security, clique o link para Use the security Setup
Wizard to configure security step by step, e em seguida, clique em Next
V para a etapa 2 do assistente e selecione a opo From the Internet.

Visual Studio

176

O assistente exibe uma pgina onde voc pode selecionar o mtodo de


autenticao que seu site Web usar. Esta opo especifica que seu aplicativo
usar a autenticao Forms, onde os usurios podero efetuar o login em seu
aplicativo usando uma pgina de login que voc criar nesta explicao passo
a passo posteriormente.
4.

Clique em Next.
O assistente exibe uma mensagem indicando que a informao do usurio
ser armazenada usando o Advanced provider settings. Por padro, a
informao da associao armazenada em um arquivo de banco de dados
do Microsoft SQL Server Express na pasta App_Data do seu site Web.

5.

Clique em Next.
O assistente exibe uma opo para criar funes. Mais tarde nesta explicao
passo a passo voc executar essa etapa separadamente. Portanto, no
selecione a caixa de seleo Enable roles for this web site.

6.

Clique em Next.
O assistente exibe uma pgina onde voc pode criar novos usurios.

7.

Insira a informao que define um usurio de seu aplicativo. Use os


seguintes valores como diretrizes (voc pode utilizar quaisquer valores, mas
certifique-se de anotar as suas entradas para a explicao passo a passo
posterior):
User Name

Seu nome (sem espaos) ou um nome simples.

Password Uma senha. Uma senha segura necessria (uma que


inclua letras maisculas e minsculas, pontuao e que tenha pelo menos oito
caracteres).

E-mail Seu endereo de e-mail pessoal. Posteriormente na


explicao passo a passo, voc enviar para si uma mensagem, portanto voc
precisa de um endereo de e-mail legtimo.

Security Questione Security Answer Digite uma questo e


responda o que pode ser usado mais tarde, se voc precisar redefinir sua
senha.

8.

Clique em Create User.


O assistente exibe uma pgina de confirmao.
Observao
Deixe a ferramenta Web Site Administration aberta.

Anteriormente, na explicao passo a passo, voc criou uma pasta chamada


MemberPages. Nesta parte da explicao, voc criar uma regra em que somente
os usurios autorizados podero acessar as pginas daquela pasta.
Para configurar as regras de acesso para o subdiretrio MemberPages
1.

No assistente, clique em Next.


O assistente exibe uma pgina que permite que voc crie regras de acesso.

2.

Na caixa Add New Access Rule, expanda o n para o seu site Web.

3.

Selecione MemberPages, a pasta que voc criou anteriormente.

Visual Studio

177

4.

Em Rule applies to, selecione Anonymous users.

5.

Em Permission, selecione Deny.


A regra que voc est criando nega acesso a usurios annimos ou seja,
usurios que no estejam autorizados.

6.

Clique em Add This Rule.


A nova regra exibido na grade abaixo. Quando os usurios solicitam uma
pgina do subdiretrio MemberPages, as regras so verificadas para
determinar se o usurio tem permisso de acesso para a pgina.

7.

Clique em Finish.
Agora voc terminou a configurao com o assistente. Ele fecha e voc
retorna para a guia Security da ferramenta Web Site Administration.

Configurando o Aplicativo para E-mail


Para parte desta explicao passo a passo, o aplicativo precisa ser ativado para
enviar mensagens de e-mail. Para enviar mensagens, seu aplicativo deve ter
acesso a um servidor Simple Mail Transport Protocol (SMTP), que encaminha
mensagens de e-mail do seu aplicativo para um destinatrio de email.
O IIS inclui o servidor virtual Default SMTP como um componente opcional, que
adequado para esta explicao passo a passo. Para obter mais informaes sobre
como configurar este servidor, consulte HOW TO: Instalar e Configurar os
Servidores Virtuais SMTP no IIS. Se voc estiver trabalhando em uma rede local,
contate o seu administrador de rede para obter informao sobre o acesso a um
servidor de e-mail.
Depois de ter configurado ou determinado como acessar um servidor SMTP, voc
deve configurar seu aplicativo para rotear as mensagens de e-mail para o servidor.
Voc pode fazer uma entrada em seu arquivo Web.config do site Web, que contm
uma srie de configuraes que determinam como o seu aplicativo executa.
Para configurar o aplicativo para usar um servidor SMTP especfico
1.

Na ferramenta Web Site Administration, clique na guia Application.

2.

No SMTP Settings, clique em Configure SMTP e-mail settings.


A ferramenta exibe uma pgina onde voc pode configurar e-mail.

3.

Se voc est usando o servidor virtual SMTP que est em seu computador,
digite localhost como o Server Name; caso contrrio, digite o nome do
servidor apropriado.
Inclua informao para o nmero da porta e para a autenticao de acordo
com os requisitos do seu servidor SMTP. Consulte o seu administrador para
obter mais informaes sobre como configurar estas opes.

4.

Na caixa From, digite um endereo de e-mail vlido.

5.

Clique em Save e na a pgina de confirmao, clique em OK.


A ferramenta Web Site Administration cria um arquivo Web.config (se j no
existir um) com as configuraes que voc fez.
Observao
O arquivo Web.config no aparecer no Solution Explorer at voc atualizar a exibio.

Visual Studio

178

6.

Feche a ferramenta Web Site Administration.

Autorizando o Usurio
Como parte do seu aplicativo, voc precisa estabelecer a identidade do usurio para
que o aplicativo possa realizar aes como mostrar ou ocultar informao com
base em quem o usurio. Para obter a identidade do usurio, preciso que o
usurio execute o login.
Nesta explicao passo a passo, voc adicionar um link na pgina que leva os
usurios para uma pgina de login, e ento, voc criar esta pgina de login.
Para criar uma pgina com um boto de login
1.

2.

Abra ou alterne para a pgina Default.aspx do seu site. (Se voc no tem
uma pgina Default.aspx, voc pode adicionar uma ou usar uma pgina
diferente.)
Alterne para o modo Design.

3.

Digite um texto esttico como Welcome to our site e, na barra de


ferramenteas Formatting, use a lista drop-down Block Format para
formatar o texto como "Heading 1".

4.

A partir do grupo Login do Toolbox, arraste um controle LoginStatus para a


pgina.

Por padro, o controle LoginStatus desenhado como um link. Quando os


usurios clicam neste controle, o aplicativo exibe uma pgina de login. Agora voc
pode criar a pgina de login.
Para criar uma pgina de login
1.

No Solution Explorer, clique com o boto direito do mouse em seu


aplicativo Web e selecione Add New Item. Adicione um Web Form chamado
Login.aspx em seu site
Observao
Para esta explicao passo a passo, a pgina deve ter o nome de Login.aspx. Por padro, autenticao de
formulrios configurada para trabalho com uma pgina com este nome. Embora voc no v fazer isso
nesta explicao, voc pode alterar a pgina de login padro a pgina para a qual os usurios so
redirecionados no arquivo Web.config.

2.
3.

Na pgina Login.aspx, alterne para o modo Design.


A partir do grupo Login do Toolbox, arraste um controle Login para a
pgina.
O controle Login um controle nico que solicita e valida as credenciais do
usurio.

Exibindo os Erros de Login


O controle Login inclui validao para ajudar os usurios a inserir informaes
corretas. Por exemplo, se um usurio ignora a senha, um controle validator exibe
um asterisco (*) ao lado da caixa Password. Voc pode fornecer informaes mais
completas para erros de login adicionando um controle ValidationSummary para a
pgina.

Visual Studio

179

Para exibir erros de login detalhados


1.

A partir do grupo Validation do Toolbox, arraste um controle


ValidationSummary para a pgina.

2.

Na janela Properties do controle ValidationSummary, defina a


propriedade ValidationGroup para Login1, que o padro de identificao do
controle Login que voc adicionou anteriormente.

Exibindo Informaes para os Usurios Autorizados


Agora voc modificar a pgina para personalizar a exibio se o usurio estiver
conectado. Os usurios annimos vero uma mensagem genrica convidando-os a
executar o login. Os usurios conectados vero uma mensagem de boas vindas
com seu nome autorizado.
Para personalizar a exibio para usurios conectados
1.
2.

Alterne para ou abra a pgina Default.aspx.


A partir do grupo Login do Toolbox, arraste um controle LoginView para a
pgina.
O controle LoginView exibido com seu modelo AnonymousTemplate
aberto. Este modelo permite que voc defina o contedo que os usurios
vero antes de se conectarem.

3.

Clique na rea de edio do controle LoginView para ativar a edio.

4.

Na rea de edio do modelo Anonymous Template do controle


LoginView, digite Voc no est autorizado. Clique no link Login para
entrar.

5.

No painel LoginView Tasks, na lista Views, clique em


LoggedInTemplate. Se voc no conseguir ver o painel LoginView Tasks,
clique com o boto direito do mouse no ttulo do controle LoginView e
selecione Show Smart Tag.
Agora voc est definindo o contedo que ser exibido aos usurios que j
esto autorizados.

6.

Clique na rea de edio do controle LoginView para ativar a edio, e em


seguida, digite Voc est autorizado. Bem-vindo..

7.

A partir do gupo Login do Toolbox, arraste o controle LoginName para o


modelo aps o texto.

Testando o Login
Agora voc pode testar a funcionalidade de login do seu aplicativo.
Para testar o login
1.

No Solution Explorer, clique com o boto direito do mouse em


Default.aspx e clique em Set As Start Page.
Isso configura o site para que, ao executar o site Web, a pgina Default.aspx
aparea primeiro.

2.

Pressione CTRL+F5 para executar o site Web.


A ???home page??? (Default.aspx) aparece no navegador, mostrando o link
Login e a mensagem genrica.

3.

Clique no link Login.


A pgina de login que voc criou exibida.

Visual Studio

180

4.

Digite o nome de login do usurio que voc criou anteriormente na


explicao passo a passo, e depois, clique em Log In. (No entre ainda com
uma senha.)
Um asterisco (*) exibido ao lado da caixa Password e uma mensagem de
erro exibida no controle ValidationSummary.

5.

Digite tanto um nome de usurio e uma senha, e depois clique em Log In.
Se voc inseriu credenciais corretas, voc retornada para a pgina inicial. A
pgina agora exibe um link Logout, o seu nome de usurio, e a mensagem
de boas-vindas que voc definiu para o usurio autorizado.

6.

Feche o navegador.

Limitando o Acesso para Pginas Exclusivas


Uma tarefa comum em muitos sites Web configurar pginas para que somente
usurios autorizados podem visualizar. Anteriormente na explicao passo a passo,
voc criou o subdiretrio MemberPages e criou uma regra que limita o acesso a
pginas no subdiretrio. Nesta seo da explicao, voc adicionar uma pgina ao
subdiretrio protegido e testar a regra de acesso.
Para criar a pgina Exclusiva
1.

No Solution Explorer, clique com o boto direito do mouse na pasta


MemberPages, clique em Add New Item, e adicione uma nova Web Form
chamada Members.aspx.
Observao
Certifique-se de criar a pgina na pasta MemberPages.

2.

No modo Design, adicione um texto para a pgina, como Bem-vindo,


membros!. O texto exato no faz diferena, contanto que voc seja capaz de
reconhecer esta pgina.

Agora voc pode adicionar um link para a pgina exclusiva. Em um aplicativo real,
voc deve, provavelmente, colocar o link da pgina exclusiva no modelo conectado
do controle LoginView. Dessa forma, os visitantes de seu site no veriam o link
at eles estarem autorizados. Para esta explicao, entretanto, voc tornar o link
disponvel para todos os usurios para que voc possa ver o efeito das tentativas
fracassadas de exibir uma pgina excluvisa.
Para adicionar um link para a pgina exclusiva
1.

Alterne para ou abra a pgina Default.aspx.

2.

A partir do grupo Standard do Toolbox, arraste um controle HyperLink para


a pgina.

3.

Na janela Properties para o controle HyperLink, defina a propriedade Text


para o Members page e a propriedade NavigateUrl para o
~/MemberPages/Members.aspx para apontar para a pgina que voc
criou anteriormente.

Testando a Pgina Exclusiva


Voc pode testar a pgina excluvisa, acessando-a como um usurio annimo ou
como um usurio conectado.

Visual Studio

181

Para testar a pgina Excluvisa


1.
2.

Pressione CTRL+F5 para executar o site Web.


Quando a pgina Default.aspx aparece no navegador, no faa o login. Em
vez disso, clique no link Members page.
Voc redirecionado para a pgina Login.aspx porque o acesso para a pgina
para membros foi negada para usurios annimos.

3.

Na pgina de login, digite o nome de usurio e a senha que voc utilizou


anteriormente na explicao passo a passo para se conectar.
Voc redirecionado para a pgina Members.aspx porque o nome de usurio
que voc utilizaou foi autorizado para acessar a pgina.

4.

Feche a janela do navegador.

Criando Novos Usurios


Na primeira parte da explicao passo a passo, voc criou um usurio com a
ferramenta Web Site Administration. Essa estratgia til se voc estiver
trabalhando com uma lista de usurios pequena; por exemplo, se voc estiver
criando usurios para uma equipe pequena. Entretando, em muitos sites Web, os
usurios tm permisso para se registrarem. O ASP.NET inclui o controle
CreateUserWizard que executa a mesma tarefa que voc executou anteriormente
usando a ferramenta Web Site Administration.
Nesta parte da explicao passo a passo, voc adicionar um recurso que permite
aos usurios se registrarem em seu site Web. Para iniciar, voc criar uma pgina
de registro.
Para criar uma pgina de registro
1.

No Solution Explorer, clique com o boto direito do mouse no nome do seu


site Web, clique em Add New Item e adicione uma nova Web Form
chamada Register.aspx.
Observao
Certifique-se de criar a pgina na raiz do site Web e no na pasta MemberPages.

2.

Na pgina Register.aspx, alterne para o modo Design e digite um texto


esttico, como Registro, para a pgina. Na barra de ferramentas
Formatting, use a lista drop-down Block Format para formatar o texto
como "Heading 1".

3.

A partir do grupo Login do Toolbox, arraste um controle


CreateUserWizard para a pgina.

4.

Na janela Properties para o controle CreateUserWizard, defina a


propriedade ContinueDestinationPageUrl para ~/Default.aspx.
Isso configura o controle para que a execuo retorne para a home page,
assim que os usurios clicarem em Continue aps a criao de um usurio, .

5.

A partir do grupo Standard do Toolbox, arraste um controle HyperLink


para a pgina. Na janela Properties para o controle HyperLink, defina a
propriedade Text para Home e a propriedade NavigateUrl para
~/Default.aspx.

Visual Studio

182

Agora voc pode adicionar um link para a home page que exibe a pgina de
registro. Para esta explicao, suponha que voc deseja exibir o link de registro
somente para os usurios que no esto autorizados.
Para criar um link de registro na home page
1.

Alterne para ou abra a pgina Default.aspx.

2.

Clique com o boto direito do mouse no controle LoginView adicionado


anteriormente, e selecione Show Smart Tag. No painel LoginView Tasks,
selecione AnonymousTemplate da caixa de listagem Views para ativar a
edio no modelo annimo.

3.

A partir do grupo Standard do Toolbox, arraste um controle HyperLink


para um modelo annimo. Na janela Properties para o controle HyperLink,
defina a propriedade Text para Register e a propriedade NavigateUrl para
Register.aspx. O link Register ser exibido somente para os usurios que
no esto autorizados.

Agora voc pode testar o processo de registro.


Para testar o registro
1.

Pressione CTRL+F5 para executar o site Web e exibir a pgina Default.aspx.


Por voc no estar conectado, a pgina contendo o link Register exibida.

2.

Clique no link Register.


A pgina de registro exibida.

3.

4.

Nas caixas de texto, digite um novo nome de usurio, uma senha forte, um
endereo de e-mail e uma pergunta de segurana e de resposta. (Todas as
cinco peas de informao so necessrias.)
Clique em Create User.
Um mensagem de confirmao exibida.

5.

Clique o boto Continue.


Voc retorna para a home page como um usurio autorizado. Observe que o
link Login foi alterado para Logout e que a informao exibida no controle
Login da propriedade LoggedInTemplate, no da propriedade
AnonymousTemplate.

6.

Clique no link Logout.


A pgina muda para exibir a informao para os usurios annimos.

7.

Clique no link Login.

8.

Insira as credenciais para o usurio que voc acabou de criar.


Voc est conectado como o novo usurio.

9.

Feche a janela do navegador.

Alterando Senhas
Eventualmente os usurios podem querer alterar suas senhas e freqentemente
impraticvel executar essa tarefa de forma manual. Portanto, voc pode usar um
outro controle do ASP.NET para permitir que os usurios alterem suas prprias
senhas. Para alterar uma senha, os usurios devem conhecer sua senha atual.
Nesta explicao passo a passo, voc adicionar uma pgina onde os usurios
conectados podem alterar suas senhas.

Visual Studio

183

Para criar uma pgina de alterao de senha


1.

No Solution Explorer, clique com o boto direito do mouse na pasta


MemberPages, clique em Add New Item e adicione uma nova Web Form
chamada ChangePassword.aspx.
Observao
Certifique-se de criar a pgina na pasta MemberPages.

2.

Voc est colocando a pgina na pasta Members-Only porque somente os


usurios autorizados podem alterar suas senhas.

3.

Na pgina ChangePassword.aspx, alterne para o modo Design e digite um


texto esttico como Alterar Senha. Na barra de ferramentas Formatting,
use a lista drop-down Block Format para formatar o texto como "Heading
1".

4.

A partir do grupo Login do Toolbox, arraste um controle ChangePassword


para a pgina.

5.

Na janela Properties para o controle ChangePassword, defina a


propriedade ContinueDestinationPageUrl para ~/Default.aspx.

6.

Isso configura o controle para que, quando os usurios clicarem em


Continue aps alterar uma senha, o controle retorne para a home page.

Agora voc pode adicionar um link para a home page que exibe a pgina de
alterao de senha. Voc disponibilizar o link apenas aos usurios que esto
conectados.
Para criar um link de alterao de senha na home page
1.
2.

Alterne para ou abra a pgina Default.aspx.


Clique com o boto direito do mouse no controle LoginView e depois clique
em Show Smart Tag. No menu LoginView Tasks, na lista Views, clique
em LoggedInTemplate.
Isso alterna o controle LoginView para o modo de edio para o contedo
que ser exibido para usurios que esto conectados.

3.

A partir do grupo Standard do Toolbox, arraste um controle HyperLink


para a regio de edio. Na janela Properties para o controle HyperLink,
defina a propriedade Text para Change password e a propriedade
NavigateUrl para ~/MemberPages/ChangePassword.aspx.
O link Change password ser exibido somente aos usurios que esto
conectados, sendo o oposto do link Register que voc criou anteriormente.

Agora voc pode testar o processo de alterao de senha.


Para testar a alterao de senha
1.
2.

Pressione CTRL+F5 para executar o site Web.


Na pgina Default.aspx, clique no link Login e se conecte como um dos
usurios que voc criou.
Quando voc tiver terminado, voc retorna para a home page como um
usurio autorizado.

3.

Clique no link Change password.

Visual Studio

184

4.

Na pgina de alterao de senha, digite a senha antiga e uma nova senha, e


depois clique em Change Password.

5.

Clique em Continue.

6.

Na home page, clique em Logout.

7.

Clique no link Login.

8.

Digite a nova senha.


Voc est conectado com a nova senha.

9.

Feche a janela do navegador.

Recuperando uma Senha


Ocasionalmente, os usurios esquecero suas senhas. Voc pode adicionar uma
pgina de recuperao de senha ao seu site Web para que eles possam efetuar
novamente a conexo para seu site. A recuperao de senha pode ter duas formas:

Voc pode enviar aos usurios a senha que eles selecionaram (ou a que voc
criou para eles quando voc configurou o site). Esta opo requer que o site
armazene a senha usando criptografia reversvel.

Voc pode enviar aos usurios uma nova senha, que eles podem alterar
usando a pgina de alterao de senha que voc criou anteriormente. Essa
opo til se o site Web armazena senhas usando um esquema de criptografia
no reversvel como hashing.
Observao

Retornando uma senha em texto no criptografado usando e-mail no recomendado para sites que
requerem um nvel alto de segurana. Para sites de alta segurana, recomendvel que voc retorne
senhas usando criptografia, como o Secure Sockets Layer (SSL).
Por padro, o sistema de associao do ASP.NET protege senhas por hashing, o que
significa que as senhas no podem ser recuperadas. Portanto, para essa parte da
explicao, seu site Web enviar aos usurios uma nova senha.
Observao
A recuperao de senha requer que o seu site Web possa enviar mensagens de e-mail. Se voc no
consegue configurar o seu site Web para enviar email (conforme explicado em "Configurando o
Aplicativo para E-mail" anteriormente), no conseguir adicionar uma recuperao de senha ao seu site.
Para adicionar recuperao de senha
1.

No Solution Explorer, clique com o boto direito do mouse no nome do seu


site Web, clique em Add New Item e adicione uma nova Web Form
chamada RecoverPassword.aspx.
Observao
Certifique-se de criar a pgina na raiz do site Web, no na pasta MemberPages.

2.

Na pgina RecoverPassword.aspx, alterne para o modo Design digite um


texto esttico como Redefinir minha senha para um novo valor. Na barra

Visual Studio

185

de ferramentas Formatting, use a lista drop-down Block Format para


formatar o texto como "Heading 1".
3.

A partir do grupo Login do Toolbox, arraste um controle PasswordRecovery


para a pgina.

4.

A partir do grupo Standard do Toolbox, arraste um controle HyperLink


para a pgina. Na janela Properties para o controle HyperLink, defina a
propriedade Text para Home e a propriedade NavigateUrl para
~/Default.aspx.

5.
6.

Alterne para a pgina Default.aspx.


Clique com o boto direito do mouse no controle LoginView e depois clique
em Show Smart Tag. No menu LoginView Tasks, na lista Views, clique
em AnonymousTemplate.
Isso alterna o controle LoginView para o modo de edio para o contedo
que aparecer para os usurios que no esto autorizados.

7.

A partir do grupo Standard do Toolbox, arraste um controle HyperLink


para um modelo. Na janela Properties para o controle HyperLink, defina a
propriedade Text para Forgot your password? e a propriedade
NavigateUrl para ~/RecoverPassword.aspx.

Agora voc pode testar a recuperao de senha.


Para testar a recuperao de senha
1.
2.
3.

Pressione CTRL+F5 para executar o site Web.


Por padro, voc no est autorizado, ento voc v o modelo annimo do
controle LoginView.
Clique no link Forgot your password?.
A pgina RecoverPassword.aspx aparece.

4.

Digite seu nome de usurio e clique em Submit.


A pergunta de segurana exibida e solicitado que voc digite a resposta de
segurana.

5.

Digite a resposta e clique em Submit.


Se voc inseriu uma resposta correta, o site Web redefine sua senha e envia
para voc uma mensagem de e-mail com a nova senha.

Prximas Etapas
Esta explicao passo a passo tem ilustrado um cenrio simples mas completo para
criar um aplicativo que solicita credenciais de usurios, exibe informao para os
usurios autorizados, permite que os usurios recuperem uma senha esquecida e
limita o acesso s pginas. Voc pode criar pginas e aplicativos mais sofisticados
usando as tcnicas e controles ilustrados na explicao. Por exemplo, voc pode
desejar:

Criar usurios adicionais e definir funes (grupos) como gerentes, vendas


ou membros e associar membro para diferentes funes. Para obter detalhes,
consulte Explicao Passo a Passo: Gerenciando Usurios de Site Web Usando
Funes.

Altere o provedor da associao de provedor Access padro para um


provedor SQL. Armazenar as informaes de associao em um banco de dados
Access adequado para sites pequenos e mdios, mas se o seu site passar por

Visual Studio

186

trfego pesado, voc desejar utilizar o Microsoft SQL Server para armazenas os
dados de associao. Para obter mais informaes, consulte Web Site
Administration Tool Provider Tab e Criando Banco de Dados de Servios do
Aplicativo para SQL Server.

Alterar a aparncia dos controles de login. Os controles Login,


PasswordRecovery e CreateUserWizard possuem suporte para modelos, que
permiteme que voc configure o texto e os botes que ele contm, assim como a
cor, a fonte e outras caractersticas de aparncia.Para obter mais informaes,
consulte os tpicos na seo Controles de Login do ASP.NET:

Criar regras que limitam o acesso s pginas ou pastas no apenas para


usurios annimos, mas para usurios ou funes especficos.

Combinar a associao com as propriedades de perfil, que permitem a voc


armazenar configuraes especficas para cada usurio. Para obter detalhes,
consulte Explicao Passo a Passo: Mantendo a Informao do Usurio do Site
Web com Propriedades de Perfil.

Combinar os controles de login com as pginas mestras. As pginas mestras


permitem que voc defina um layout da pgina que pode ser usado para todas
as pginas em seu aplicativo. Para obter detalhes, consulte Explicao Passo a
Passo: Criando e Usando as Pginas Mestras do ASP.NET em Visual Web
Developer.

Adicionar o recurso para recuperar uma senha esquecida. Para mais


informaes, consulte HOW TO: Ativar a Recuperao de Senha de Usurio
Usando o Controle PasswordRecovery do ASP.NET.

Visual Studio

187

Passo-a-passo: Criando e usando um


servio da Web ASP.NET no Visual Web
Developer
Alm de permitir que voc crie pginas da Web, o Microsoft Visual Studio tambm
deixa que voc crie servios da Web que usem ASP.NET XML. A criao de um
servio da Web no Visual Studio semelhante a criar uma pgina da Web. Voc
tambm pode usar a ferramenta de desenvolvimento Web do Microsoft Visual Web
Developer para referenciar e usar servios da Web que esto em uma soluo do
Visual Web Developer em seu computador local ou em um diretrio UDDI local ou
externo. Nesta explicao passo a passo, voc ir criar o servio da Web em uma
soluo e us-lo em outra.
As tarefas ilustradas nesta explicao passo a passo incluem:

Criar um XML Web Service simples no Visual Web Developer.

Criar um site em separado que usa o servio da Web.


Pr-requisitos

Para concluir esta explicao passo a passo, ser necessrio:

Servios de Informaes da Internet da Microsoft (IIS) instalado localmente


em seu computador.
Criando um servio da Web na raiz do IIS

Crie um novo servio e uma pgina da Web seguindo estas etapas.


Observao
Voc deve usar um site do IIS para esta explicao passo a passo.
Para criar um servio da Web
1.

Abra o Visual Web Developer.

2.

No menu File, clique em New Web Site.


A caixa de dilogo New Web Site aparece.

3.

Em Visual Studio installed templates, clique em ASP.NET Web Service.

4.

Clique em Browse.

5.

Clique em Local IIS.

6.

Clique em Default Web Site.

7.

Clique em Create New Web Application.


O Visual Web Developer cria um novo aplicativo da Web do IIS.

8.

Digite o nome TemperatureWebService.

9.

Clique em Open.
A caixa de dilogo New Web Site aparece com o nome do novo site no canto
mais a direita da lista Location. A localidade inclui o protocolo (http://) e a
localidade (localhost). Isso Indica que voc est trabalhando com um site
local do IIS.

Visual Studio

188

10. Na lista Language, clique na linguagem de programao com a qual voc


prefere trabalhar.
A linguagem de programao que voc escolher ser o padro para o site.
Entretanto, voc pode usar mais de uma linguagem no mesmo aplicativo da
Web, criando pginas e componentes em linguagens de programao
diferentes. Para obter mais informaes sobre como criar componentes
usando diferentes linguagens, consulte Pastas de cdigo compartilhadas em
sites do ASP.NET.
11. Clique em OK.
O Visual Web Developer cria o novo servio da Web e abre uma nova classe
chamada Service, que o servio da Web padro. Entretanto, no
procedimento a seguir ser criado um novo servio da Web com um nome
diferente e no voc usar a classe Service.
12. Feche a classe Service.
Criando o servio da Web
Voc criar um servio da Web que converte a temperatura de Fahrenheit para
Celsius e vice-versa.
Para criar o servio da Web
1.

No Solution Explorer, clique com o boto direito do mouse no nome do site


(http://localhost/TemperatureWebService), e clique em Add New Item.

2.

Em Visual Studio installed templates, clique em Web Service, e na caixa


Name, digite Convert.

3.

Certifique-se de que a caixa de seleo Place code in separate file est


selecionada e clique em Add.
O Visual Web Developer cria um novo servio da Web que composto de dois
arquivos. O arquivo Convert.asmx o arquivo que pode ser chamado para
chamar os mtodos do servio da Web e ele aponta para o cdigo do servio
da Web. O cdigo propriamente dito est em um arquivo de classe
(Convert.vb, Convert.cs, ou Convert.jsl, dependendo da linguagem de
programao) na pasta App_Code. O arquivo de cdigo contm um modelo
para um servio da Web. O arquivo de cdigo inclui um cdigo para um
mtodo do servio da Web.

Voc criar dois mtodos no servio da Web. O primeiro mtodo converte


temperaturas Fahrenheit para Celsius, e o segundo mtodo converte temperaturas
Celsius para Fahrenheit.
Para criar os mtodos de converso
1.

Adicione o seguinte cdigo dentro a classe, aps o mtodo HelloWorld:


C#
[System.Web.Services.WebMethod()] public double FahrenheitToCelsius(double Fahrenheit) {
return ((Fahrenheit - 32) * 5) / 9; } [System.Web.Services.WebMethod()] public double
CelsiusToFahrenheit(double Celsius) { return ((Celsius * 9) / 5) + 32; }

Observe que os nomes das funes so precedidos com um atributo


([System.Web.Services.WebMethod()] ou <System.Web.Services.WebMethod()>) como parte
da declarao da funo
2.

Depois que voc inseriu as funes, salve o arquivo.

Visual Studio

189

Agora voc pode testar o servio da Web no Visual Web Developer.


Para testar o servio da Web
1.

No Solution Explorer, clique em Convert.asmx e pressione CTRL+F5.


O servio da Web chamado e aparece uma pgina no navegador que mostra
os mtodos que so expostos pelo servio da Web.

2.

Clique em CelsiusToFahrenheit, que chama esse mtodo.


Aparece uma pgina que solicita que voc entre os valores dos parmetros
para o mtodo CelsiusToFahrenheit.

3.

Na caixa Celsius, digite 100 e clique em Invoke.


Uma nova janela aparece exibindo o XML que o servio da Web retorna
quando o mtodo CelsiusToFahrenheit chamado. O valor 212 aparece no
XML.

4.

Feche o navegador que contm os resultados do mtodo.

5.

No navegador original, clique em Back para retornar para a lista de


mtodos.

6.

Clique em FahrenheitToCelsius e teste para certificar-se de que o mtodo


est retornando os resultados que voc espera.
Se voc digitar 212, o mtodo FahrenheitToCelsius retornar 100.

7.

Feche o navegador.

Voc terminou de criar o servio da Web; a prxima etapa us-lo.


Usando o servio da Web
Agora que voc tem um servio da Web, voc ir criar um site onde voc ir
referenciar e usar o servio da Web que voc criou. Para a explicao passo a
passo, voc ir criar um site separado que tenha uma pgina onde voc inicia os
mtodos do servio da Web recm-criado.
Para criar um site para usar o servio da Web
1.

No menu File, clique em New Web Site.

2.

Em Visual Studio installed templates, clique em ASP.NET Web Site.

3.

Clique em Browse.

4.

Clique em Local IIS.

5.

Clique em Default Web Site.

6.

Clique em Create New Web Application.


O Visual Web Developer cria um novo aplicativo da Web do IIS.

7.

Digite o nome TemperatureWeb.

8.

Clique em Open.

9.

Na lista Language, clique na linguagem de programao com a qual voc


prefere para trabalhar.

10. Clique em OK.


O Visual Web Developer cria um novo site local do IIS e uma nova pgina
chamada Default.aspx.
Adicionando o servio da Web como um componente

Visual Studio

190

O servio da Web um componente que voc pode referenciar no seu aplicativo.


Portanto, voc deve criar uma referncia a ele.
Para criar uma referncia para o servio da Web
1.

No Solution Explorer, clique com o boto direito do mouse no nome do site e


clique em Add Web Reference.
A caixa de dilogo Add Web Reference aparece, como mostrado no seguinte
instantneo:
Caixa de dilogo Add Web Reference

2.

Na lista URL, digite a seguinte URL para o servio da Web e, em seguida,


clique em Go:
http://localhost/TemperatureWebService/Convert.asmx
Quando o Visual Web Developer encontra o servio da Web, as informaes
sobre o servio da Web aparecem na caixa de dilogo Add Web References.
Observao
Se voc no puder adicionar uma referncia para um servio da Web, pode ser que o servidor proxy no
esteja configurado corretamente. No Microsoft Internet Explorer, no menu Ferramentas, clique em
Opes da Internet, clique em Conexes e clique em Configuraes de LAN. Selecione a caixa de
seleo Ignorar servidor de proxy para endereos locais. Alm disso, defina o endereo do servidor
proxy com o nome exato do servidor proxy em vez de permitir que o Internet Explorer detecte o servidor
proxy. Para obter mais informaes, contate o administrador de rede.

3.

Clique em um dos links dos mtodos.


O pgina de teste para o mtodo aparece.

4.

Clique em Add Reference.


O Visual Web Developer cria uma pasta App_WebReferences e lhe adiciona
uma pasta para a nova referncia da Web. Por padro, so atribudas s
referncias da Web um namespace correspondente ao seu nome de servidor
(neste caso, localhost). Anote o nome do namespace para a referncia da
Web. Na pasta, o Visual Web Developer adiciona um arquivo .WSDL que
referencia o servio da Web. Ele tambm adiciona arquivos de suporte, como
arquivos de busca (.disco e .discomap), que incluem informaes sobre onde
o servio da Web est localizado.
Observao
Se o nome do servidor para o servio da Web contiver caracteres que no podem ser usados para um
nome de classe, como um hfen (-), o Visual Web Developer converte os caracteres em um caractere
sublinhado (_). Portanto, o namespace no Visual Web Developer para o servio da Web pode no
corresponder exatamente ao nome do servidor.

Agora voc pode usar o servio da Web. Nesta explicao passo a passo, voc ir
adicionar controles ao Default.aspx, e depois programar os controles para converter
uma temperatura especificada em Fahrenheit e em Celsius. Quando a pgina
estiver sendo executada, ela parecer com a seguinte ilustrao.

Visual Studio

191

Temperature conversion page

Para chamar os mtodos do servio da Web


1.
2.

Abra a pgina Default.aspx e alterne para o modo Design.


A partir do grupo Standard na caixa de ferramentas, arraste os seguintes
controles para a pgina e definia suas propriedades conforme o indicado:
Controle

Propriedades

Textbox

IDTemperatureTextbox
Text: (vazio)

Button

IDConvertButton
Text: Convert

Label

IDFahrenheitLabel
Text: (vazio)

Label

IDCelsiusLabel
Text: (vazio)

3.

Opcionalmente, adicione texto pgina nas legendas.


O layout de pgina para esta explicao passo a passo no importante.

4.

Clique duas vezes em ConvertButton para criar um manipulador de eventos


para o evento Click.

5.

Verifique se o cdigo do seu manipulador de eventos corresponde ao cdigo


de exemplo a seguir:
C#
protected void ConvertButton_Click(object sender, EventArgs e) { localhost.Convert wsConvert =
new localhost.Convert(); double temperature =
System.Convert.ToDouble(TemperatureTextbox.Text); FahrenheitLabel.Text = "Fahrenheit To
Celsius = " + wsConvert.FahrenheitToCelsius(temperature).ToString(); CelsiusLabel.Text =
"Celsius To Fahrenheit = " + wsConvert.CelsiusToFahrenheit(temperature).ToString(); }

6.

Pressione CTRL+F5 para executar a pgina.

7.

Na caixa de texto, digite um valor, como 100, e clique em Convert.


A pgina exibe o resultado da converso do valor da temperatura em
Fahrenheit e em Celsius.

Depurando o servio da Web


Voc pode depurar um servio da Web da mesma maneira que voc depura pginas
da Web.

Visual Studio

192

Observao
O Visual Web Developer Express Edition e o Visual Studio Standard Edition no oferecem suporte passo
a passo por dentro das chamadas em um servio da Web de uma pgina que o referencia. Se voc estiver
usando o Visual Web Developer Express Edition ou o Visual Studio Standard Edition, ignore esta seo e
as seguintes. Para obter mais informaes sobre como depurar sites da Web, consulte Passo-a-passo:
Depurando pginas da Web no Visual Web Developer.
Para iniciar, voc deve configurar o site que contm o servio da Web para ativar a
depurao.
Para ativar a depurao no site de servios da Web
1.

No menu File, clique em Open Web Site.

2.

Clique em Local IIS.

3.

Clique em TemperatureWebService e clique em Open.

4.

No menu Website, clique em ASP.NET Configuration para abrir o Web


Site Administration Tool.
Observao
Se esta for a primeira vez que voc tiver executado o Web Site Administration Tool, pode demorar um
pouco antes de ele aparecer.

5.
6.
7.

Clique em Application e clique em Application Configuration.


Em Debugging and Tracing, clique em Configure debugging and
tracing.
Selecione a caixa de seleo Enable debugging.
O Web Site Administration Tool cria um arquivo Web.config para o site e
define uma opo de configurao para ativar a depurao.
Observao
Para consultar o arquivo Web.config no Solution Explorer, clique no nome do site e, na barra de
ferramentas do Solution Explorer, clique em Refresh.

8.

Feche o Web Site Administration Tool.

Agora voc deve ativar a depurao para o site que usa o servio da Web.
Para ativar a depurao do site
1.

Abra o site TemperatureWeb.

2.

No menu Website, clique em ASP.NET Configuration para abrir o Web


Site Administration Tool.

3.

Clique em Application, clique em Application Configuration em


Debugging and Tracing, clique em Configure debugging and tracing e
selecione a caixa de seleo Enable debugging.

4.

Feche o Web Site Administration Tool.

Visual Studio

193

Observao
Para consultar o arquivo Web.config no Solution Explorer, selecione o nome do site e clique em Refresh
na barra de ferramentas do Solution Explorer.
5.

No Solution Explorer, clique com o boto direito do mouse em Default.aspx e


clique em View Code.
O Visual Web Developer abre o arquivo de cdigo para a pgina.

6.

Posicione o ponteiro do mouse na seguinte linha:


C#
double temperature = System.Convert.ToDouble(TemperatureTextbox.Text);

7.

Pressione F9 para definir um ponto de interrupo na linha.

Testando a depurao
O site e o servio da Web esto configurados para a depurao, para que voc
agora possa comear a depurar. Voc ir iniciar na pgina Default.aspx e depurar o
cdigo at que o cdigo chame o servio da Web. O depurador alternar para o
servio da Web e continuar a depurao atravs do cdigo.
Para depurar a pgina e o servio da Web
1.

Pressione F5 para executar a pgina Default.aspx usando depurao.


A pgina aparece no navegador.

2.

Na caixa, digite um valor, como 100, e clique em Convert.


O Visual Web Developer comea a executar o cdigo da pgina, mas pra e
reala a linha com o ponto de interrupo sobre ele.

3.

Pressione F11 para ir para a prxima linha.

4.

Pressione F11 novamente.


Como a linha seguinte chama o servio da Web, o depurador vai para o
servio da Web, parando na primeira linha do mtodo FahrenheitToCelsius.

5.

Continue pressionando F11.


O depurador avana atravs do restante do mtodo e retorna para a pgina
que chamou o mtodo. Se voc continuar a depurao, o depurador ir de
volta para o servio da Web e para o mtodo CelsiusToFahrenheit.

6.

Feche o navegador, que tambm fecha o depurador.

Prximas etapas
Esta explicao passo a passo ilustrou os princpios bsicos de criao de um
servio da Web muito simples e de us-lo em um aplicativo ASP.NET. Voc pode
desejar experimentar servios da Web com recursos adicionais e mais complexos.
Sugestes para exploraes adicionais incluem o seguinte:

Compreender o processamento que ocorre quando voc faz uma chamada


XML Web Service.
Para mais informaes, consulte Anatomia do tempo de vida de um XML Web
Service.

Entender como usar XML Web Services.

Visual Studio

194

Para mais informaes, consulte Cenrios do XML Web Service.

Criar XML Web Services que oferecem funcionalidades mais sofisticadas do


que o servio da Web simples desta explicao passo a passo. Voc pode criar e
encadear chamadas de mtodos de servios da Web assncronas, usar
transaes, proteger os servios da Web, configurar servios da Web para
autenticao do Microsoft Windows, e assim por diante.
Para mais informaes, consulte XML Web Services utilizando ASP.NET .

Aprender sobre os recursos especficos da linguagem e da tecnologia


fornecidos pelo XML Web Service.
Para obter mais informaes, consulte XML Web Services no Visual FoxPro,
Introduo programao de XML Web Services em cdigo gerenciado, Servios
da Web (como fao no Visual Basic), XML Web Services criados com o servidor
ATL e Explicaes passo a passo sobre a criao e o acesso a XML Web Services.

Visual Studio

195

Criando e Acessando Explicaes Passo a


Passo de XML Web Services
XML Web Services fornecem acesso programtico a lgica do aplicativo usando
protocolos padro da Web, como XML e HTTP. XML Web Services podem ser
aplicativos autnomos ou subcomponentes de um aplicativo maior da Web. XML
Web Services so acessveis de praticamente qualquer outro tipo de aplicativo,
incluindo outros XML Web Services, aplicativos Web, aplicativos do Windows e
aplicativos console. O nico requisito de que o cliente possa enviar, receber, e
processar mensagens de e para um XML Web Service. Para obter mais informaes,
consulte Programao na Web com XML Web Services.
Essas explicaes passo a passo cobrem dois caminhos de desenvolvimento
logicamente separados, criando XML Web Services e acessando XML Web Services.
Embora voc possa ser tanto o criador e o usurio de um XML Web Services
especfico, os processos so distintamente separados. claro, voc precisar criar
um XML Web Services antes de poder acess-lo.
As explicaes passo a passo de criao de XML Web Services usar duas
tecnologias separadas para implementar um XML Web Services. Em todos os casos,
voc cria a mesma funcionalidade XML Web Services; a nica diferena o mtodo
de implementao.
As explicaes passo a passo de acesso a XML Web Services concentram nas
etapas necessrias para acessar XML Web Services no cdigo gerenciado e cdigo
no gerenciado. Em cada explicao passo a passo, o aplicativo cliente acessa o
XML Web Services usando uma classe proxy gerada pelo Visual Studio.
Observao
Em cada explicao passo a passo voc ir acessar um XML Web Services criado em uma das
explicaes passo a passo acima "Criando um XML Web Service...". Ou seja, no necessrio concluir
pelo menos uma das explicaes passo a passo "Criando um XML Web Service..." antes de tentar um das
explicaes passo a passo " Acessando um XML Web Service ".
Para uma demonstrao de um XML Web Services que retorna um DataSet
altamente tipado de SQL Server e processa atualizaes de aplicativos Windows e
da Web, consulte Criando um aplicativo distribudo Walkthrough:.

Visual Studio

196

Explicao Passo a Passo: Criando um


XML Web Services usando Visual Basic
ou Visual C#
Explicao passo a passo a seguir descreve o processo para criar um XML Web
Services que converte temperaturas medidas em Fahrenheit para Celsius usando
Visual Basic ou C# visual.
Voc durante esta explicao passo a passo, voc ir realizar as atividades a
seguir:

Criar um XML Web Services usando o modelo projeto servio ASP.NET Web.

Implementar o XML Web Services.

Executar o XML Web Services no modo de depurao.

Implantar o XML Web Services.

Para concluir o explicao passo a passo, voc precisar ter acesso a uma mquina
que atende aos requisitos para criar um projeto da Web. Para obter mais
informaes, consulte Tour guiado da criao de sites no Visual Web Developer e
Passo a passo: Criando e usando um servio da Web do ASP.NET no Visual Web
Developer.
Criar projeto servio XML da Web
O Visual Studio fornece um modelo de projeto ASP.NET Web Service para ajud-lo
a criar XML Web Services no Visual Basic e Visual C#.
Para criar um ASP.NET Web Service Project
1.

No menu File, escolha New Web Site.

2.

Na caixa de dilogo New Web Site, selecione o cone ASP.NET Web


Service.

3.

Digite o endereo do servidor Web no qual voc ir desenvolver o XML Web


Services e especifique TempConvert1 como o nome do diretrio, tal como "
http://MyServer/TempConvert1 ". Por padro, o projeto usa seu computador
local, " http://localhost ".
Observao
Para alguns tipos de projeto, o caixa de texto Name est disponvel porque especificando a localidade
define em vez disso o nome do projeto. Por exemplo, aplicativos da Web e XML Web Services esto
localizados em um servidor Web e derivam seus nomes do diretrio virtual especificado no servidor.
Observao
Voc desenvolve XML Web Services em um servidor de desenvolvimento. Por padro, o servidor de
desenvolvimento sua mquina local. Normalmente, voce desenvolve e constri o projeto em um
servidor de desenvolvimento, e ento voc o implementa em outro servidor (o servidor se implementao)
que ir hospedar o XML Web service usando um projeto de implementao. Entretanto, se voc estiver
desenvolvendo diretamente no servidor que hospedar o XML Web Services, o servidor de
desenvolvimento e o servidor de implantao so os mesmos.

Visual Studio

197

4.

Clique OK para criar o projeto.

O Visual Studio automaticamente cria os arquivos necessrios e inclui as


referncias necessrias para suportar um XML Web Services. Quando voc criar um
projeto XML Web Services no Visual Studio, ver o criador de componente para
Service1.asmx.
Implementar o servio da Web XML
A prxima etapa escrever o cdigo para implementar a funcionalidade do XML
Web Services que os clientes iro acessar. Para XML Web Services criados no Visual
Studio, um arquivo oculto code-behind associado ao arquivo.asmx do XML Web
Services que o Visual Studio criou para voc contm esse cdigo. Para obter mais
informaes, consulte COMO: Criar um Mtodo de Servio da Web XML.
Para adicionar um mtodo de XML Web Service
1.

No arquivo cdigo Service.vb, localize o cdigo para a declarao de classe


Service. Substituia o cdigo de atributo System.Web.Services.WebService com o

seguinte cdigo antes da declarao de classe (mostrada em negrito):


Visual Basic

<System.Web.Services.WebService( _ Namespace:="http://Walkthrough/XmlWebServices/", _
Description:="A temperature conversion service.")> _ Public Class Service
[System.Web.Services.WebService( Namespace="http://Walkthrough/XmlWebServices/",
Description="A temperature conversion service.")] public class Service :
System.Web.Services.WebService

Unindo o atributo WebService classe Public se torna possvel a incluso de


informao adicional sobre o XML Web Service, como um namespace para o
XML Web Service e uma descrio para o XML Web Service. A propriedade
description desse atributo est includa na pgina de ajuda de Service. Para
obter mais informaes, consulte COMO: Usar o Atributo WebService.
2.

Na classe Service, adicione o seguinte cdigo para declarar a funo


ConvertTemperature:
Visual Basic
<WebMethod(Description:="This method converts a temperature in " & _ "degrees Fahrenheit to
a temperature in degrees Celsius.")> _ Public Function ConvertTemperature(ByVal dFahrenheit
As Double) _ As Double Return ((dFahrenheit - 32) * 5) / 9 End Function
[WebMethod(Description="This method converts a temperature in " + "degrees Fahrenheit to a
temperature in degrees Celsius.")] public double ConvertTemperature(double dFahrenheit) {
return ((dFahrenheit - 32) * 5) / 9; }

Anexando o atributo WebMethod a um mtodo Public expe esse mtodo como


parte do XML Web Services. A propriedade description deste atributo est
includo na pgina ajuda de Service e na pgina de ajuda Service Methods.
Para obter mais informaes, consulte COMO: Usar o Atributo WebMethod.
3.
4.

Clique com o boto direito do mouse Service.asmx em Solution Explorer e


clique Set as Start Page no menu de atalho.
Salvar a soluo.

Depurar o XML Web Service


O Visual Studio oferece vrios mtodos para criar e executar um XML Web Services
a partir da IDE, tais como:

Visual Studio

198

Iniciar (com depurao)

Iniciar sem depurao

Modo de Exibio no navegador

Como um projeto Visual Studio, este XML Web Services tem configuraes
separadas para as verses de lanamento e depurao. Como voc criou este
projeto usando o modelo de projeto do servio da Web ASP.NET, Visual Studio
automaticamente criou essas configuraes e definiu as opes padro apropriadas
e outras configuraes. Para obter mais informaes, consulte HOW TO: definir
depurao e configuraes de verso.
Nesta explicao passo a passo, ser colocado um ponto de interrupo no XML
Web Services e usado o mtodo Start (with Debugging). Para obter mais
informaes, consulte Como Depurar XML Web Services em Cdigo No
Gerenciado.
Antes de depurao, verifique as configuraes de depurao. Para obter mais
informaes, consulte Projetos Servio da Web XML depurao preparao:.
Para usar um ponto de interrupo e iniciar o XML Web Services com depurao
1.

No menu Debug, escolher New Breakpoint, ento Break At Function.


Na guia Function, digite ConvertTemperature na caixa Function e clique
OK para adicionar um ponto de interrupo na declarao de mtodo
ConvertTemperature.

2.

No menu Debug, clique em Start, clique Ok na janela Debugging Not


Enabled para iniciar depurao.
Este comando instrui o Visual Studio a executar o XML Web Services no
depurador. O Visual Studio cria o projeto e o implanta para o servidor de
desenvolvimento designado. Aps a concluso, o navegador padro exibe o
arquivo.asmx a partir do servidor de implantao.
Quando voc abre um arquivo.asmx em um navegador, o XML Web Services
retorna uma pgina Service auxiliar que fornece informaes sobre o XML
Web Services. O Service Description link leva voc para um documento XML
que contm a descrio servio formal do XML Web Services. Para obter mais
informaes, consulte XML Web Service Description.

3.

Na pgina de ajuda Service, clique no link ConvertTemperature.

4.

Na caixa dFahrenheit, digite o nmero 212, e clique no boto Invoke.


Quando o processamento atingir a funo ConvertTemperature, o processamento
pra. O depurador Visual Studio reala a linha que contm o ponto de
interrupo; enquanto ele interrompido, voc pode executar uma variedade
de tarefas. Para obter mais informaes, consulte Explicao detalhada sobre
o depurador e Exibindo Dados no Depurador.

5.
6.

No menu Debug, clique em Continue para continuar o processamento.


O XML Web Services responde retornando o valor convertido em um
documento XML semelhante ao seguinte:
<?xml version="1.0" encoding="utf-8" ?> <double
xmlns="http://Walkthrough/XmlWebServices/">100</double>

Para interromper a execuo do XML Web Services e retornar ao editor de


cdigo, no menu Debug, clique em Stop Debugging.

Visual Studio

199

7.

No menu Debug, clique em Delete All Breakpoints.

Implantando o XML Web Service


Para tornar seu XML Web Services disponvel para outros, voc deve implant-lo
em um servidor Web que seja acessvel para os clientes que voc queira dar
suporte. Para distribuir o XML Web Services para um servidor que no seja o
servidor de desenvolvimento, voc pode adicionar um projeto Web Setup ou copiar
os arquivos necessrios para o servidor de destino. Nesta explicao passo a passo,
voc pode escolher como implantar este XML Web Services. Para obter mais
informaes, consulte COMO: Implantar Servios da Web XML no Cdigo
Gerenciado.
Para implantar o XML Web Services usando um projeto Web Setup
1.
2.
3.

No menu File, aponte para Add, e clique New Project.


Selecionar o n Other, e o n Setup and Deployment Projects, e clique
em Web Setup Project.
Na caixa Name, digitar TempConvert1WebSetup, e clique OK.
Observao
Por padro, o instalador usa o nome do projeto de implantao ao criar o diretrio virtual em seu servidor
de implantao.

4.

No painel esquerdo do File System Editor, selecione Web Application


Folder. Para obter mais informaes, consulte File System Editor.

5.

No Solution Explorer, clique com o boto direito do mouse em


TempConvert1WebSetup, aponte para Add, e clique Project Output.

6.

Na caixa de dilogo Add Project Output Group, selecione Content Files.


Para obter mais informaes, consulte Como adicionar e remover Outputs
Project no File System Editor:.

O grupo Content Files consiste dos seguintes arquivos para o XML Web
Services: Service1.asmx, GLOBAL.asax, e Web.config. Para obter mais
informaes, consulte COMO: Implantar Servios da Web XML no Cdigo
Gerenciado.

7.
8.

Clique em OK.
No Solution Explorer, clique com o boto direito do mouse no
projetoTempConvert1WebSetup, e no menu de atalho, clique Build.
Isso cria um arquivo do Windows Installer no diretrio de projeto local.
Executar este arquivo instala o aplicativo da Web.

Para implantar o XML Web Services, copiando o projeto


1.

No Solution Explorer, selecione o projeto TempConvert1.

2.

No menu Project, clique em Copy Web Site.

3.

Clique no cone ao lado da caixa suspensa Connect To para abrir a caixa de


dilogo Open Web Site. Navegue para a localidade para a qual voc deseja
copiar o projeto.

4.

No painel Source Web Site, selecione os arquivos para copiar e mov-los


para o painel Remote Web Site, clicando no cone de seta direita. .

Visual Studio

200

5.

Clique Copy Web Site para copiar o site.

Finalmente, para criar um aplicativo cliente que acesse esse XML Web Services,
consulte um destes procedimentos:

Passo-a-Passo: acessando um XML Web Services utilizando Visual Basic ou


Visual C#

Acessar um servio da Web XML usando C++ Walkthrough:

Acessar um servio da Web XML usando C++ e o CLR Walkthrough:

Visual Studio

201

Passo-a-passo: Criando um XML Web


Service usando C++ e o CLR
Os desenvolvedores podem usar a nova sintaxe C++ para expor funcionalidade
escrita em C++ como um servio XML da Web. Usando essa sintaxe, os
desenvolvedores podem criar classes gerenciadas usando C++. Essas classes e
seus mtodos pblicos ento podem ser expostos como servios XML da Web
usando arquivos.asmx da mesma maneira como os Servios XML da Web no Visual
Basic e Visual C#.
Durante o curso desta explicao passo a passo, voc ir realizar as atividades a
seguir:

Criar um servio XML da Web usando o ASP.NET Web Service modelo de


projeto.

Implementar o XML Web Services.

Depurar o servio da Web XML.

Implantar o XML Web Services.

Para concluir o explicao passo a passo, voc precisar ter acesso a uma mquina
que atende aos requisitos para criar um projeto da Web. Para obter mais
informaes, consulte Requisitos de hardware do Visual Studio. Voc tambm
precisar de permisses suficientes para ser capaz de criar projetos XML Web
Services no computador onde seu servidor Web est.
Criar projeto servio XML da Web
Usando o ASP.NET Web Service modelo de projeto, Visual Studio cria
automaticamente um projeto do servio XML da Web que usa C++.
Para criar um projeto Servio da Web ASP.NET com C++
1.

No menu File, aponte para New, e clique Project para abrir a New Project
caixa de dilogo.

2.

Selecione a Visual C++ Projects pasta, e, em seguida, clique no ASP.NET


Web Service cone.

3.

Na caixa Name, digite TempConvert3 e depois clique em OK.


O modelo de projeto fornece automaticamente os arquivos necessrios e
referncias a suporte um servio XML da Web.
Dica
No Solution Explorer Consulte o arquivo ReadMe.txt que descreve os projetos e arquivos gerados.

Implementar o servio da Web XML


A prxima etapa para gravar o cdigo para implementar a funcionalidade do que
os clientes podem acessar o servio da Web XML. Quando o servidor Web recebe
uma solicitao para o servio da Web XML, ele chama TempConvert3.asmx, que
por sua vez chama este cdigo.
Observao

Visual Studio

202

Para exibir o contedo do arquivo.asmx, no Solution Explorer, clique com o boto direito do mouse no
arquivo.asmx e clique Open With no menu de atalho. Na caixa Open With de dilogo, selecione Source
Code (Text) Editor e clique em OK
O arquivo.asmx Especifica a classe que a implementao do servio da Web XML
na propriedade Class do arquivo WebService.asmx diretiva de processamento,
que lembra o seguinte:
<%@ WebService Class="TempConvert3.TempConvert3Class" %>

Dica
Se voc optar por renomear a classe, certifique-se alterar o nome de classe no Class atributo da diretiva
WebService.
Para adicionar um mtodo de XML Web Service
1.

Clique duas vezes o Component Designer na superfcie do design para exibir


o cdigo para esse arquivo, TempConvert3Class.h.

2.

Os mtodos da classe TempConvert3Class fornecer a implementao do


servio da Web XML. Herda TempConvert3Class da classe
System::Web::Services::WebService base. Localize a declarao de
classe:
public ref class TempConvert3Class : public System::Web::Services::WebService

Insira o seguinte cdigo antes que declarao:


[System::Web::Services::WebServiceAttribute(
Namespace="http://Walkthrough/XmlWebServices/", Description="A temperature conversion
XML Web Service.")]

Anexar o System::Web::Services::WebServiceAttribute atributo a essa


classe torna possvel para que voc possa incluir informaes adicionais sobre
o servio XML da Web, como especificar um espao para nome e uma
descrio. A propriedade description desse atributo est includa na pgina de
ajuda de Service. Para obter mais informaes, consulte WebServiceAttribute.
3.

Voc ir adicionar um mtodo pblico para esta classe e expor esse mtodo
como parte do servio da Web XML. Localize o mtodo HelloWorld de
exemplo:
public: [System::Web::Services::WebMethod] String ^HelloWorld(); // TODO: Add the methods
of your Web Service here

Substituir esse mtodo com o seguinte:


public: [System::Web::Services::WebMethod( Description="Converts temperatures from F to C.")]
double ConvertTemperature(double dFahrenheit);

Anexar o System::Web::Services::WebMethod atributo a este mtodo


indica que voc deseja o mtodo exposto como parte do servio da Web XML.
A propriedade description deste atributo est includo na pgina ajuda de
Service e na pgina de ajuda Service Methods. Para obter mais informaes,
consulte WebMethodAttribute.

Visual Studio

203

4.

No Solution Explorer, localize TempConvert3Class.cpp na pasta Source


Files do Projeto TempConvert3 e abrir este arquivo para edio.

5.

Localizar e substituir o contedo do espao para nome TempConvert3 com


o seguinte:
namespace TempConvert3 { double TempConvert3Class::ConvertTemperature(double
dFahrenheit) { return ((dFahrenheit - 32) * 5) / 9; } };

6.

Salve a soluo.

7.

No menu Build, clique em Build Solution.

Depurar o XML Web Service


O Visual Studio oferece vrios mtodos para criar e executar um XML Web Services
a partir da IDE, tais como:

Start Debugging

Start Without Debugging

View in Browser

Como um projeto Visual Studio, este XML Web Services tem configuraes
separadas para as verses de lanamento e depurao. Criadas essas configuraes
porque voc criado este projeto usando o ASP.NET Web Service modelo de
projeto, Visual Studio automaticamente e definir as opes padro apropriado e
outras configuraes. Para obter mais informaes, consulte HOW TO: definir
depurao e configuraes de verso.
Nessa explicao passo a passo, ser colocar um ponto de interrupo no servio
XML da Web e use o Start Debugging mtodo. Quando o servio da Web XML
estiver sendo executado, ser anexar ao processo do sistema em que estiver sendo
executado para depur-la. Para obter mais informaes, consulte Como Depurar
XML Web Services em Cdigo No Gerenciado.
Antes da depurao, verifique as configuraes de depurao. Para obter mais
informaes, consulte Preparao da Depurao: Web Services XML (C++).
Para usar um ponto de interrupo e iniciar o XML Web Services com depurao
1.

No menu Debug, selecione New Breakpoint, e selecione Break at


Function.
Na caixa New Breakpoint de dilogo, digite
TempConvert3::TempConvert3Class::ConvertTemperature lado para
Function e clique OK para colocar um ponto de interrupo na declarao
ConvertTemperature de mtodo.

2.

No menu Debug, clique em Start Debugging.


Este comando instrui Visual Studio para executar o servio XML da Web como
ele faria normalmente. O Visual Studio compila o projeto e o implanta no
servidor de desenvolvimento designado. Aps a concluso, o navegador
padro exibe o arquivo.asmx a partir do servidor de implantao.
Quando voc abre um arquivo.asmx em um navegador, o XML Web Services
retorna uma pgina Service auxiliar que fornece informaes sobre o XML
Web Services. Clicar no Service Description Link retorna um documento
XML que contm o descrio do servio formal do servio XML Web. Para
obter mais informaes, consulte Descrio do XML Web Service.

Visual Studio

204

3.
4.

Na pgina TempConvert3Class Servio da Web, clique no


ConvertTemperature Link.
Na caixa dFahrenheit, digite o nmero 212, e clique no Invoke boto.
Quando processamento atinge a ConvertTemperature funo,
processamento pra. O depurador do Visual Studio reala a linha que contm
o ponto de interrupo e, enquanto interrompido, voc poder executar uma
variedade de tarefas. Para obter mais informaes, consulte Debugger and
Language Overview e Exibindo Dados no Depurador.

5.

No menu Debug, clique Continue para continuar o processamento.

6.

O XML Web Services responde retornando o valor convertido em um


documento XML semelhante ao seguinte:
<?xml version="1.0" encoding="utf-8" ?> <double
xmlns="http://Walkthrough/XmlWebServices/">100</double>

Para interromper executando o servio XML da Web e retornar ao editor de


cdigo, no menu Debug, clique em Stop Debugging.
7.

No menu Debug, clique em Delete All Breakpoints.

Para obter mais informaes, consulte Passo-a-passo: Depurao de um servio


XML da Web.
Implantando o XML Web Service
Para implantar esse servio XML da Web, voc deve criar um projeto de
implantao.
Para implantar o XML Web Services usando um projeto Web Setup
1.
2.

No menu File, aponte para New e clique em Project.


No painel Project types, expanda o Other Project Types n e selecione
Setup and Deployment. No painel Templates, clique em Web Setup
Project.

3.

Na caixa Name, digite TempConvert3WebSetup.

4.

Na lista suspensa Solution Selecionar Add to Solution, e clique em OK


Observao
Por padro, o instalador usa o nome do projeto de implantao ao criar o diretrio virtual em seu servidor
de implantao.

5.

No painel esquerdo da guia File System (TempConvert3WebSetup),


selecione Web Application Folder. Para obter mais informaes, consulte
Editor do sistema de arquivos.

6.

No Solution Explorer, clique com o boto direito do mouse


TempConvert3WebSetup, aponte para Add, e clique em Project Output.

7.

Na caixa Add Project Output Group de dilogo, selecione Content Files.


Para obter mais informaes, consulte Como adicionar e remover resultados
Project no editor do sistema de arquivos:.

O grupo arquivos contedo consiste os seguintes arquivos para o


servio da Web XML: TempConvert3.asmx, Global.asax, e Web.config. Para

Visual Studio

205

obter mais informaes, consulte Implantando servios da Web XML em


cdigo gerenciado.
8.
9.

Clique em OK.
No painel esquerdo da guia File System (TempConvert3WebSetup),
expanda Web Application Folder e localize a pasta rotulada bin.

10. Clique com o boto direito do mouse na bin pasta, aponte para Add, e clique
em Project Output
11. Na caixa Add Project Output Group de dilogo, selecione Primary output
e Debug Symbols. Para obter mais informaes, consulte Como adicionar e
remover resultados Project no editor do sistema de arquivos:.
o

O grupo primrio de sada consiste do projeto DLL, TempConvert3.dll,


e suas dependncias.

O grupo smbolos de depurao consiste do arquivo PDB projeto,


TempConvert3.pdb.

12. Clique em OK.


13. No Solution Explorer, clique com o projeto de implantao, e seguida, no
menu de atalho, clique em Build.
Isso cria um arquivo do Windows Installer no diretrio do projeto local.
Executar este arquivo em um servidor Web para instalar este servio da Web
XML.
Para obter mais informaes, consulte Implantando aplicativos e componentes.
Finalmente, para criar um aplicativo cliente que acesse esse XML Web Services,
consulte um destes procedimentos:

Passo-a-Passo: acessando um XML Web Services utilizando Visual Basic ou


Visual C#

Passo-a-passo: Acessando um XML Web Service usando C++

Passo-a-passo: Acessando um XML Web Service usando C++ e o CLR

Visual Studio

206

Walkthrough: Criando um servio da Web


XML usando ATL Server
Explicao passo a passo o seguir descreve o processo para criar um servio XML
da Web que converte temperaturas medidas em Fahrenheit para Celsius usando
C++ e ATL Server.
ATL Server torna possvel para os desenvolvedores a usar o Active Template Library
para facilmente implementar servios XML da Web como uma extenso ISAPI. Para
obter mais informaes, consulte Fornecer servios XML da Web.
Durante o curso desta explicao passo a passo, voc ir realizar as atividades a
seguir:

Criar um servio XML da Web usando o modelo do projeto Servio da Web


Server ATL.

Implementar o XML Web Services.

Implantar o XML Web Services.

Para concluir o explicao passo a passo, voc precisar ter acesso a uma mquina
que atende aos requisitos para criar um projeto da Web. Para obter mais
informaes, consulte Requisitos de hardware do Visual Studio.
Desde que os Servios XML da Web usando ATL Server no responda a solicitaes
HTTP-GET ou POST HTTP-, voc precisar criar um cliente que acesse este servio
da Web XML para explorar sua funcionalidade. Para obter mais informaes,
consulte Criando Servios da Web XML.
Criar projeto servio XML da Web
O Visual Studio fornece um modelo de projeto Servio da Web Server ATL para
ajud-lo criar servios da Web XML usando ATL Server. Para obter mais
informaes, consulte Criar um Projeto ATL Server.
Para criar um projeto do servio da Web ATL Server
1.

No menu File, aponte para New, e clique Project para abrir a New Project
caixa de dilogo.

2.

Selecione a Visual C++ Projects pasta, e, em seguida, clique no ATL


Server Web Service cone.

3.

Na caixa Name, digite TempConvert4.

4.

Clique OK Para iniciar o ATL Server Project Wizard.

5.

No ATL Server Project Wizard, clique Finish para aceitar os padres do


projeto. Para obter mais informaes, consulte Criar um Projeto ATL Server.
Observao
Voc tem a opo de criar uma DLL combinado, que combina a funcionalidade ISAPI com o cdigo do
aplicativo. Esta opo est localizada na pgina Project Settings do assistente. No entanto, para essa
explicao passo a passo, voc ir criar DLLs separados.

6.

O assistente cria uma soluo, que contm dois projetos separados: um


projeto do manipulador e um projeto de extenso ISAPI.

Visual Studio

207

Dica
O Assistente para Servidor ATL fornece um ReadMe.txt arquivo que descreve os projetos e arquivos
gerados no Solution Explorer.
o

Voc ir escrever o cdigo que fornece a funcionalidade para o servio


da Web XML no projeto do manipulador, que se torna o manipulador
personalizado DLL posteriormente.

Voc pode personalizar o cdigo usado para criar a extenso DLL


ISAPI no projeto de extenso ISAPI. Neste projeto, voc encontrar um
arquivo ReadMe.txt mais que explica a finalidade de cada arquivo gerado.
Para essa explicao passo a passo, voc no necessitar personalizar a DLL
ISAPI.

Voc criar um projeto de implantao como a etapa final dessa explicao passo a
passo. Para obter mais informaes, consulte Criando Servios da Web XML.
Implementar o servio da Web XML
Voc fornecer a funcionalidade do seu servio da Web XML com o cdigo voc
escrever para a classe do manipulador. Quando o servidor recebe uma solicitao
para o servio da Web XML, a extenso ISAPI chama este cdigo.
Para adicionar um mtodo de XML Web Service
1.

No Solution Explorer, localize a Header Files Pasta do projeto


TempConvert4, e seguida, clique duas vezes TempConvert4.h para abrir o
arquivo para edio.

2.

ITempConvert4Service a definio de interface para o servio da Web


XML. Ele oferece suporte um mtodo, que voc ir declarar como
ConvertTemperature. Localizar e substituir a definio de
ITempConvert4Service interface de exemplo com o seguinte:
__interface ITempConvert4Service { [id(1)] HRESULT ConvertTemperature( [in] double
dFahrenheit, [out, retval] double* pdCelsius); };

3.

A CTempConvert4Service classe fornece a implementao de servio da


Web XML. Voc ir adicionar um mtodo pblico para esta classe e expor esse
mtodo como parte do servio da Web XML. No mesmo arquivo,
TempConvert4.h, localize e substituir a definio de classe de
CTempConvert4Service exemplo com o seguinte:
class CTempConvert4Service : public ITempConvert4Service { public: [ soap_method ] HRESULT
ConvertTemperature( /*[in]*/ double dFahrenheit, /*[out, retval]*/ double* pdCelsius) { if
(!pdCelsius) return E_INVALIDARG; *pdCelsius = ((dFahrenheit - 32) * 5) / 9; return S_OK; } };
// class CTempConvert4Service

Observao
Os atributos ATL Server que esto localizados entre as definies de interface e classe, request_handler
e soap_handler, ajudar a simplificar a tarefa de fornecer a infra-estrutura de servio da Web XML. Alm
disso, o soap_method atributo identifica qual mtodo para expor como um servio XML da Web. Para
obter mais informaes, consulte Atributos ATL Server.
4.

Salve a soluo.

Visual Studio

208

5.

No menu Build, clique em Build Solution.

Implantando o XML Web Service


Para tornar seu XML Web Services disponvel para outros, voc deve implant-lo
em um servidor Web que seja acessvel para os clientes que voc queira dar
suporte. Para implantar o servio da Web XML em um servidor que no seja o
servidor de desenvolvimento, voc pode adicionar um projeto de instalao da Web
ou voc pode copiar os arquivos necessrios para o servidor de destino
manualmente.
Para implantar o XML Web Services usando um projeto Web Setup
1.
2.
3.

No menu File, aponte para Add Project, e clique em New Project.


Selecione a Setup and Deployment Projects pasta, e clique em Web
Setup Project.
Na caixa Name, digite TempConvert4WebSetup, e depois clique em OK.
Observao
Por padro, o instalador usa o nome do projeto de implantao ao criar o diretrio virtual em seu servidor
de implantao.

4.

No painel esquerdo da File System Editor, selecione Web Application


Folder. Para obter mais informaes, consulte Editor do sistema de arquivos.

5.

No Solution Explorer, clique com o boto direito do mouse


TempConvert4WebSetup, aponte para Add, e clique em Project Output

6.

Na caixa Add Project Output Group de dilogo, selecione Content Files,


Primary output e Debug Symbols. Para obter mais informaes, consulte
Como adicionar e remover resultados Project no editor do sistema de
arquivos:.

O grupo arquivos contedo consiste os arquivos restantes para o


servio XML da Web, tais como TempConvert4.htm e TempConvert4.disco.

O grupo primrio de sada consiste do projeto DLL, TempConvert4.dll,


e suas dependncias.

O grupo smbolos de depurao consiste do arquivo PDB projeto,


TempConvert4.pdb.

7.

Clique em OK.

8.

No Solution Explorer, clique com o boto direito do mouse


TempConvert4WebSetup novamente, aponte para Add, e clique em
Project Output

9.

Na caixa Add Project Output Group de dilogo, alterar o projeto para


TempConvert4Isapi, e selecione Primary output e Debug Symbols. Para
obter mais informaes, consulte Como adicionar e remover resultados
Project no editor do sistema de arquivos:.

O grupo primrio de sada consiste do projeto DLL,


TempConvert4Isapi.dll, e suas dependncias.

O grupo smbolos de depurao consiste do arquivo PDB projeto,


TempConvert4Isapi.pdb.

10. Clique em OK.

Visual Studio

209

11. No painel esquerdo de expandir Web Application Folder, clique com o


boto direito do mouse bin e, em seguida, clique em Delete. o File System
Editor,
12. No Solution Explorer, clique com o TempConvert4WebSetup projeto, e no
menu de atalho, clique em Build
Isso cria um arquivo do Windows Installer no diretrio do projeto local.
Executar este arquivo em um servidor Web para instalar este servio da Web
XML.
Para obter mais informaes, consulte Implantando aplicativos e componentes.
Finalmente, para criar um aplicativo cliente que acesse esse XML Web Services,
consulte um destes procedimentos:

Passo-a-Passo: acessando um XML Web Services utilizando Visual Basic ou


Visual C#

Passo-a-passo: Acessando um XML Web Service usando C++

Passo-a-passo: Acessando um XML Web Service usando C++ e o CLR

Visual Studio

210

Passo-a-passo: Acessando um XML Web


Service usando C++ e o CLR
Explicao passo a passo o seguir descreve o processo para acessar um servio
XML da Web de um aplicativo criado usando C++.
Durante o curso desta explicao passo a passo, voc ir realizar as atividades a
seguir:

Criar um aplicativo do cliente usando o CLR Console Application modelo de


projeto.

Adicionar uma referncia da Web para um XML Web Services.

Escrever cdigo para acessar o XML Web Services.

Execute o aplicativo do cliente no modo de depurao.

Para concluir a explicao passo a passo, voc deve fornecer o seguinte:

Uma mquina atendendo aos requisitos encontrado no Requisitos de


hardware do Visual Studio.

Um servio XML da Web criado de uma das orientaes a seguir:

Explicao Passo a Passo: Criando um XML Web Services usando


Visual Basic ou Visual C#

Walkthrough: Criando um servio da Web XML usando ATL Server

Passo-a-passo: Criando um XML Web Service usando C++ e o CLR


Criando um projeto cliente de XML Web Services

Para essa explicao passo a passo, voc ir criar um aplicativo de console simples
que acessa o servio da Web XML TempConvert3, que era o nome dado para a Web
XML servio criado no Passo-a-passo: Criando um XML Web Service usando C++ e
o CLR.
Observao
Para acessar uma implementao diferente do servio da Web XML, a converso de temperatura
simplesmente substitua os nomes apropriados onde aparece o nome TempConvert3 em toda essa
explicao passo a passo.
Para criar um aplicativo de console
1.

No menu File, aponte para New, e clique Project para abrir a New Project
caixa de dilogo.

2.

Expanda o Visual C++ n, e selecione CLR.

3.

Clique no CLR Console Application cone.

4.

Alterar o nome do projeto para TempConvertClient3.

5.

Clique OK para criar o projeto.

Adicionando uma referncia da Web


Descoberta de XML Web Services o processo pelo qual um cliente localiza um XML
Web Services e obtm sua descrio de servio. O processo de descoberta de XML
Web Services no Visual Studio envolve interrogar um site da Web seguindo um

Visual Studio

211

algoritmo predeterminado. A meta do processo localizar a descrio de servio,


que um documento XML que usa o WSDL (Web Services Description Language).
Para obter mais informaes, consulte Descoberta de XML Web Service.
A descrio de servio descreve quais servios esto disponveis e como interagir
com os servios. Sem uma descrio de servio, impossvel interagir com um XML
Web Services programaticamente. Para obter mais informaes, consulte Descrio
do XML Web Service.
O aplicativo precisa um meio para se comunicar com o servio da Web XML e para
localiz-lo em tempo de execuo. Adicionar uma referncia da Web ao seu projeto
para o XML Web Services faz isso por gerar uma classe proxy que interfaceia com o
XML Web Services e fornece uma representao local do XML Web Services. Para
obter mais informaes, consulte Referncias da Web e COMO: Gerar um Proxy de
Servio da Web XML.
Adicionar uma referncia da Web
1.

Na Solution Explorer, selecione o TempConvert3Client n de projeto. No


menu Project, clique em Add Web Reference.

2.

Na caixa URL da caixa Add Web Reference de dilogo, digite a URL para
obter o descrio do servio do servio XML Web voc deseja acessar, such as
http://localhost/TempConvert3WebSetup/TempConvert3.asmx.
Clique no Go boto para recuperar informaes sobre o servio da Web XML.
OuSe o servio da Web XML existir na mquina local, clique no Web services
on the local machine Link no painel do navegador. Clique no link para o
servio da Web XML TempConvert3 na lista fornecida para recuperar
informaes sobre o servio da Web XML.

3.

Na caixa Web reference name, renomear a referncia da Web, a


ConvertSvc Qual o espao para nome ser usado para esta referncia da
Web.

4.

Clique Add Reference para adicionar uma referncia da Web para o destino
XML Web Service. Para obter mais informaes, consulte Como: Adicionar e
remover referncias da Web.
O Visual Studio baixa o descrio do servio e adiciona-o ao seu projeto. Em
seguida, ele gera uma classe de proxy e compila uma DLL do descrio do
servio. Finalmente, Visual Studio adiciona um novo arquivo WebService.h, de
cabealho, ao seu projeto. Este arquivo de cabealho referencia espaos para
nome do .NET Framework para usar os Servios XML da Web e a DLL criado
necessrio. Se explorar o diretrio do projeto local, voc tambm encontrar
o arquivo de fonte Visual C# para a DLL.

Acessando o XML Web Services


Depois de adicionar uma referncia para o servio da Web XML ao seu projeto, a
prxima etapa para criar uma instncia de classe de proxy do servio da Web
XML. Voc pode acessar os mtodos do XML Web Service da mesma maneira que
voc acessar mtodos qualquer do objeto chamando os mtodos da classe de
proxy. Quando o aplicativo chama esses mtodos, o cdigo gerado pelo Visual
Studio trata as comunicaes entre o aplicativo e o servio da Web XML.
Acessar o XML Web Services
1.

No Solution Explorer, localize TempConvertClient3.cpp na pasta Source


Files e abra este arquivo para edio.

Visual Studio

212

2.

Substituir o contedo do arquivo com o seguinte:


#include "stdafx.h" #include "WebService.h" using namespace System; int main(void) { while
(true) { try { ConvertSvc::TempConvert3Class^ proxy = gcnew ConvertSvc::TempConvert3Class();
Console::Write("Temperature in degrees Fahrenheit: "); System::String^ sInput =
Console::ReadLine(); double dFahrenheit = System::Convert::ToDouble(sInput); double dCelsius
= proxy->ConvertTemperature(dFahrenheit); Console::Write("Temperature in degrees Celsius: ");
Console::WriteLine(dCelsius.ToString()); } catch (System::FormatException^ e) {
Console::WriteLine("Invalid value...exiting: {0}", e->Message); break; } } return 0; }

Observao
O nome da classe do servio da Web XML gerado quando adicionando uma referncia da Web pode
diferir daquele mostrado acima como TempConvert3Class.
3.

Salve a soluo.

4.

No menu Build, clique em Build Solution.

Depurando o cliente de XML Web Services


Quando voc executar o aplicativo, ele acessa o servio da Web XML e exibe o
Celsius temperatura equivalente do Fahrenheit digitado.
Visual Studio oferece vrios mtodos para criar e executar um aplicativo de dentro
o IDE,, como:

Start Debugging

Start without Debugging

Como um projeto do Visual Studio, este aplicativo tem separadas configuraes


para verses liberao e DEBUG. Criadas essas configuraes porque voc criado
este projeto usando o CLR Console Application modelo de projeto, Visual Studio
automaticamente e definir as opes padro apropriado e outras configuraes.
Para obter mais informaes, consulte HOW TO: definir depurao e configuraes
de verso.
Nessa explicao passo a passo, ser colocar um ponto de interrupo no aplicativo
e use o Start Debugging mtodo.
Antes da depurao, verifique as configuraes de depurao. Para obter mais
informaes, consulte Preparao da depurao: Projetos de console.
Para utilizar um ponto de interrupo e iniciar o aplicativo com depurao
1.

No Editor do cdigo, coloque o cursor na linha de cdigo que chama a funo


proxy:
double dCelsius = proxy->ConvertTemperature(dFahrenheit);

2.

Pressione F9 para colocar um ponto de interrupo nesta linha de cdigo.


ou
Clique esquerda dessa linha de cdigo na margem indicador.
Para obter mais informaes, consulte COMO: Depurar Cdigo no Editor.

3.

No menu Debug, clique em Start Debugging.


Este comando instrui Visual Studio para executar o aplicativo no depurador. O
Visual Studio cria o projeto e inicia o aplicativo.

Visual Studio

213

4.

Na janela do console, digite o nmero 212 e pressione ENTER.


Quando processamento atingir do ponto de interrupo, processamento pra.
O depurador do Visual Studio reala a linha que contm o ponto de
interrupo e, enquanto interrompido, voc poder executar uma variedade
de tarefas. Para obter mais informaes, consulte Explicao detalhada sobre
o depurador e Exibindo Dados no Depurador.

5.

No menu Debug, clique Continue para continuar o processamento.


O aplicativo cria uma mensagem de solicitao SOAP, que ele envia para o
servio XML da Web. Em retorno, o aplicativo recebe uma mensagem de
resposta SOAP. O aplicativo ento analisa a resposta e exibe uma mensagem
indicando que 212 Fahrenheit graus o equivalente de 100 Celsius graus.
Para parar execuo do aplicativo e retornar ao editor de cdigo, no menu
Debug, clique em Stop Debugging.

6.

No menu Debug, clique em Delete All Breakpoints.

Visual Studio

214

Passo-a-passo: Acessando um XML Web


Service usando C++
Explicao passo a passo o seguir descreve o processo para acessar um servio
XML da Web de um aplicativo criado usando C++.
Durante o curso desta explicao passo a passo, voc ir realizar as atividades a
seguir:

Criar um aplicativo do cliente usando o modelo Project Win32.

Adicionar uma referncia da Web para um XML Web Services.

Escrever cdigo para acessar o XML Web Services.

Execute o aplicativo do cliente no modo de depurao.

Para concluir a explicao passo a passo, voc deve fornecer o seguinte:

Uma mquina que atenda aos requisitos encontrado no Requisitos de


hardware do Visual Studio.

Um servio XML da Web criado de uma das orientaes a seguir:

Explicao Passo a Passo: Criando um XML Web Services usando


Visual Basic ou Visual C#

Walkthrough: Criando um servio da Web XML usando ATL Server

Passo-a-passo: Criando um XML Web Service usando C++ e o CLR


Criando um projeto cliente de XML Web Services

Para essa explicao passo a passo, voc ir criar um aplicativo de console simples
que acessa o servio da Web XML TempConvert4, que era o nome dado para a Web
XML servio criado no Walkthrough: Criando um servio da Web XML usando ATL
Server.
Observao
Para acessar uma implementao diferente do servio da Web XML, a converso de temperatura
simplesmente substitua os nomes apropriados onde aparece o nome TempConvert4 em toda essa
explicao passo a passo.
Para criar um aplicativo do cliente do servio XML da Web
1.

No menu File, aponte para New, e clique Project para abrir a New Project
caixa de dilogo.

2.

Expanda a Visual C++ Projects pasta, e, em seguida, clique no Win32


Project cone.

3.

Alterar o nome do projeto para TempConvertClient4.

4.

Clique OK Para iniciar o Win32 Application Wizard.

5.

Na Win32 Application Wizard, execute o seguinte:


1.

Na pgina Application Settings, clique em Console application.

2.

Selecione ATL Para adicionar suporte de Biblioteca ATL.

3.

Clique em Finish.

Visual Studio

215

Adicionando uma referncia da Web


Descoberta de XML Web Services o processo pelo qual um cliente localiza um XML
Web Services e obtm sua descrio de servio. O processo de descoberta de XML
Web Services no Visual Studio envolve interrogar um site da Web seguindo um
algoritmo predeterminado. A meta do processo localizar a descrio de servio,
que um documento XML que usa o WSDL (Web Services Description Language).
Para obter mais informaes, consulte Descoberta de XML Web Service.
O descrio do servio ou contrato, descreve quais servios esto disponveis e
como interagir com os servios. Sem uma descrio de servio, impossvel
interagir com um XML Web Services programaticamente. Para obter mais
informaes, consulte Descrio do XML Web Service.
O aplicativo deve ter um meio para se comunicar com o servio da Web XML e para
localiz-lo. Adicionar uma referncia da Web ao seu projeto para o XML Web
Services faz isso por gerar uma classe proxy que interfaceia com o XML Web
Services e fornece uma representao local do XML Web Services. Para obter mais
informaes, consulte Referncias da Web.
Adicionar uma referncia da Web
1.
2.

No menu Project, clique em Add Web Reference.


Na caixa URL da caixa Add Web Reference de dilogo, digite a URL para
obter o descrio do servio do servio XML Web voc deseja acessar, such as
http://localhost/TempConvert4/TempConvert4Service.asmx. Clique
no boto Go para recuperar informaes sobre o XML Web Services.
OuSe o XML Web Services est na mquina local, clique no link Web services
on the local machine no painel do navegador. Clique no link para o servio
da Web XML TempConvert4 na lista fornecida para recuperar informaes
sobre o servio da Web XML.

3.

Na caixa Web reference name, renomeie a referncia da Web para


ConvertSvc, que o namespace que voc usar para essa referncia da
Web.

4.

Clique Add Reference para adicionar uma referncia da Web para o destino
XML Web Service. Para obter mais informaes, consulte Como: Adicionar e
remover referncias da Web.
O Visual Studio gera um novo arquivo de cabealho mas no adiciona-lo para
o projeto. No entanto, ele no salvar o arquivo de cabealho gerado para a
pasta do projeto. O nome do arquivo de cabealho depende do servio da
Web XML voc optar por acessar. Este arquivo de cabealho re-Generated
sempre que voc criar o projeto. Para obter o nome correto do arquivo de
cabealho, examine o contedo da seo janela sada do log de compilao
(BuildLog.htm no diretrio Arquivos intermedirio) ou Output Window o. O
nome de arquivo correto aparece em uma linha que lembra o seguinte:
/out:ConvertSvc.h. Para exibir no menu View Aponte para Other Windows e
clique em Output. o Output Window,

Para obter mais informaes, consulte Como: Adicionar e remover referncias da


Web.
Acessando o XML Web Services

Visual Studio

216

Aps seu projeto tem uma referncia para o servio XML da Web, a prxima etapa
para criar uma instncia da classe proxy. Para obter mais informaes, consulte
Criar clientes do servio XML da Web.
Voc pode acessar os mtodos do XML Web Service da mesma maneira que voc
acessar mtodos qualquer do objeto chamando os mtodos da classe de proxy.
Quando o aplicativo chama esses mtodos, o cdigo gerado pelo Visual Studio trata
as comunicaes entre o aplicativo e o servio da Web XML. Para obter mais
informaes, consulte Criar clientes do servio XML da Web.
Acessar o XML Web Services
1.

No Solution Explorer, localize stdafx.h na pasta Header Files e abra este


arquivo para edio.

2.

Adicione o seguinte # definir instrues (em negrito) aps o # existente


definir instruo WIN32_LEAN_AND_MEAN:
#define WIN32_LEAN_AND_MEAN // Disable client timeout for testing. Default is 10000
milliseconds. #define ATL_SOCK_TIMEOUT INFINITE // Minimum system requirements are
Windows 98, Windows NT 4.0, or later #define _WIN32_WINDOWS 0x0410

3.

Add the following #include statements after the existing #include for
<atlbase.h>:
#include "ConvertSvc.h" #include <conio.h> #include <iostream>

Observao
O nome do arquivo de cabealho gerado quando adicionando uma referncia da Web pode diferir daquele
mostrado acima como ConvertSvc.h. Para obter o nome correto do arquivo de cabealho, examine o
contedo da seo janela sada do log de compilao (BuildLog.htm no diretrio Arquivos intermedirio)
ou Output Window o. O nome de arquivo correto aparece em uma linha que lembra o seguinte:
/out:ConvertSvc.h. Para exibir no menu View Aponte para Other Windows e clique em Output. o
Output Window,
4.

No Solution Explorer, localize TempConvertClient4.cpp na pasta Source


Files e abrir este arquivo para edio.

5.

Primeiro, voc criar uma instncia da classe de proxy do servio da Web


XML. Em seguida, voc ir levar um valor, que o console fornece, e fazer uma
chamada ao mtodo do servio ConvertTemperature da Web XML
chamando o mtodo na classe proxy. Voc ir exibir o valor retornado pelo
servio da Web XML no console. Insira o cdigo a seguir:
Observao
O cdigo a seguir usa uma classe denominada TempConvert4Service::CTempConvert4Service.
Aponte para o arquivo de cabealho gerado na sua pasta do projeto para determinar o nome de classe
adequado para o servio da Web XML e substitua-onde
TempConvert4Service::CTempConvert4Service. aparece o cdigo abaixo

6.

#include "stdafx.h" void AccessService(){ using namespace std; double dFahrenheit = 0.0;
double dCelsius = 0.0; TempConvert4Service::CTempConvert4Service ws; while (1){ cout <<
"Enter a temperature in degrees Fahrenheit: "; cin >> dFahrenheit; if (!cin.good()){ cout << "Not a
temperature" << endl; break; } HRESULT hr = ws.ConvertTemperature(dFahrenheit, &dCelsius);
if (SUCCEEDED(hr)) cout << dFahrenheit << " F = " << dCelsius << " C\n" << endl; else cout <<

Visual Studio

217

"An error occurred: " << hr << endl; } } int _tmain(int argc, _TCHAR* argv[]){ if
(SUCCEEDED(CoInitialize(NULL))){ AccessService(); CoUninitialize(); } return 0; }

7.

Salve a soluo.

8.

No menu Build , clique em Build Solution.

Depurando o cliente de XML Web Services


Quando voc executar o aplicativo, ele acessa o servio da Web XML e exibe o
Celsius temperatura equivalente do Fahrenheit digitado.
O Visual Studio oferece vrios mtodos para criar e executar um aplicativo de IDE,
como:

Start (with Debugging)

Start without Debugging

Como um projeto do Visual Studio, este aplicativo tem separadas configuraes


para verses liberao e DEBUG. Criadas essas configuraes porque voc criado
este projeto usando o modelo do projeto Project Win32, Visual Studio
automaticamente e definir as opes padro apropriado e outras configuraes.
Para obter mais informaes, consulte HOW TO: definir depurao e configuraes
de verso.
Nessa explicao passo a passo, ser colocar um ponto de interrupo no aplicativo
e use o Start (with Debugging) mtodo.
Para utilizar um ponto de interrupo e iniciar o aplicativo com depurao
1.

No menu Debug, clique em New Breakpoint.


Na guia Function, digite AccessService na caixa Function e clique OK para
colocar um ponto de interrupo na declarao AccessService de mtodo.

2.

No menu Debug , clique em Start.


Dica
F5 o atalho do teclado padro para Start.

3.

Este comando instrui Visual Studio para executar o aplicativo no depurador.


O Visual Studio compila o projeto e o implanta no servidor de
desenvolvimento designado. Aps a concluso, o navegador padro exibe o
arquivo.asmx a partir do servidor de implantao.

4.

Para interromper a execuo do XML Web Service e retornar para o Code


Editor, feche o navegador.
ou
No menu Debug, clique em Stop Debugging.
Dica
SHIFT+F5 o atalho do teclado padro para Stop Debugging.

5.

Na janela do console, digite o nmero 212 e pressione ENTER.

Visual Studio

218

Quando processamento atinge a AccessService funo, processamento pra.


O depurador do Visual Studio reala a linha que contm o ponto de
interrupo e, enquanto interrompido, voc poder executar uma variedade
de tarefas. Para obter mais informaes, consulte Explicao detalhada sobre
o depurador e Exibindo Dados no Depurador.
6.

No menu Debug, clique Continue para continuar o processamento.


Dica
F5 o atalho do teclado padro para Continue.

7.

O aplicativo cria uma mensagem de solicitao SOAP, que ele envia para o
servio XML da Web. Em retorno, o aplicativo recebe uma mensagem de
resposta SOAP. O aplicativo ento analisa a resposta e exibe uma mensagem
indicando que 212 Fahrenheit graus o equivalente de 100 Celsius graus.

8.

Para parar execuo do aplicativo e retornar ao editor de cdigo, no menu


Debug, clique em Stop Debugging.

9.

No menu Debug, clique em Clear All Breakpoints.


Dica
+ CtrlShift + F9 o atalho do teclado padro para Clear All Breakpoints.

Visual Studio

219

Passo-a-passo: Criando um aplicativo


distribudo
Nessa explicao passo a passo, voc criar um aplicativo de vrias camadas,
distribudos, intranet. O aplicativo consiste em trs camadas lgicas: Dados, objeto
comercial, e interface de usurio. A camada de dados um banco de dados no SQL
Server. A camada de negcio-Objeto tratar acessar os dados e distribui-lo para os
clientes. A camada da interface do usurio consistir em tanto um aplicativo
baseado na Web e um aplicativo Windows tradicional.
Voc criar o aplicativo um aplicativo de dados simples com pesquisa e editar.
Voc criar um cliente Windows para exibir a tabela Clientes do banco de dados de
exemplo Northwind SQL Server. Voc criar um servio XML da Web para recuperar
dados que contm informaes clientes a partir do banco de dados. Voc ento
criar um aplicativo do Windows que iro se comunicar com este servio XML da
Web para recuperar um DataSet que contm as informaes do autor.
Voc criar o servio da Web XML e o cliente aplicativos no mesmo servidor,
embora o banco de dados pode residir em outro servidor. Tanto o servidor de
aplicativos e o servidor de banco de dados precisar que residam na mesma
intranet. Essa organizao de projetos, voc pode usar a autenticao do Windows
para obter acesso ao banco de dados e testar seu aplicativo. No mesmo, essa
organizao remove muitos dos detalhes de acessar recursos para que voc pode
ver a interao do servio XML da Web e os aplicativos cliente. Essa organizao
pode no ser exatamente a arquitetura voc deseja para aplicativos voc Criar por
conta prpria.
Pr-requisitos
A fim de concluir este explicao passo a passo, ser necessrio:

Acesso a um servidor com o exemplo de SQL Server do Northwind,


configurado para autenticao Integrated Windows. O banco de dados Northwind
um banco de dados de exemplo que voc pode instalar com SQL Server.

Uma compreenso bsica de como dados so manipulados no Visual Studio


.NET. Para obter mais informaes, consulte Viso geral do ADO.NET.
Processo para criar um aplicativo distribudos

Um cenrio possvel para desenvolver um aplicativo distribudo consiste em criar


uma camada ao mesmo tempo, talvez comeando com a camada de dados, e
mover para o objeto regra negcio-camada intermediria, e finalmente criar a
interface do usurio. Para essa explicao passo a passo, os dados j foi gerado e
est disponvel no banco de dados Northwind no SQL Server. Portanto, o explicao
passo a passo iniciar com criando o objeto comercial o servio da Web XML
seguido por criando as interfaces dois usurio uma pgina de formulrios da Web
e um formulrio do Windows. O processo para essa explicao passo a passo a
seguinte:
1.

Criar o objeto comercial da camada intermediria


1.
2.
3.

2.

Criar um Projeto Servio da Web ASP.NET


Criar e configurar uma conexo de banco de dados e um esquema
DataSet
Expor DataSet do seu objeto comercial

Criar a interface de usurio

Visual Studio

220

1.
3.

Criar uma interface do usurio do Windows

Implantar a soluo ou adicionar mais recursos

Criar o objeto Business Tier intermediriaO objeto comercial voc criar ser executado em um servidor Web para fornecer o
desempenho e escalabilidade necessria para um aplicativo distribudo. Voc alm
disso, ser implementar o objeto comercial como um servio XML da Web para que
os clientes podem usar protocolos padro da Internet para se comunicar com o
objeto comercial de qualquer plataforma. Para obter detalhes, consulte
Programao na Web com XML Web Services.
O componente servio XML da Web nessa explicao passo a passo, ser mantenha
as conexes de dados e definio DataSet. Mtodos Servio da Web XML depois
sero adicionados para expor o DataSet, que tornar possvel para outros
aplicativos para exibir e modificar DataSet.
O servio da Web XML ser expor dois mtodos. O primeiro, GetCustomers,.
retornar um DataSet a partir do banco de dados O segundo, UpdateCustomers,.
ir atualizar o banco de dados com alteraes do usurio
Para criar um projeto Servio da Web ASP.NET
1.

No menu File, aponte para New ento Web Site para exibir a New Web
Site caixa de dilogo.

2.

Selecione ASP.NET Web Service no painel Visual Studio Installed


Templates.

3.

Na caixa Location, digite o nome do servidor Web (no seu computador de


desenvolvimento) com o nome do projeto,
http://ServerName/CustomersWebService,. e, em seguida clique em
OK
Dica
Como o servidor Web estiver em seu computador, poder usar o nome do servidor LOCALHOST.

4.

5.
6.

O CustomersWebService projeto adicionado soluo. Observe que o


servio da Web for inicializado no idioma padro que voc escolheu para
Visual Studio.
No Solution Explorer, clique Service.asmx para selecion-la.
Na janela Propriedades, defina a File Name propriedade de Service para
CustomersService.
Nesse componente ser criar uma conexo com o armazenamento de dados e
obter uma instncia dos dados usando um DataSet.

Criar e configurar uma conexo de banco de dados e um esquema DataSet


Do TableAdapter Configuration Wizard ir adicionar um DataSet ao seu
aplicativo e depois usar para gerar um tipo TableAdapter especfico tabela
Clientes do banco de dados.
Para criar um adaptador conexo e dados de banco de dados
1.
2.

No menu Website, escolha Add New Item. A Add New Item caixa de
dilogo ser aberta.
Selecione Dataset e clique em Add

Visual Studio

221

DataSet adicionado ao seu projeto, e a TableAdapter Configuration


Wizard. for iniciado
3.

No TableAdapter Configuration Wizard, clique New Connection para


criar sua conexo.
A Add Connection caixa de dilogo Abrir, e Microsoft SQL Server PreSelected como o tipo de banco de dados

4.

5.

Na caixa Add Connection de dilogo, digite o nome do SQL Server onde o


banco de dados Northwind est instalado. Se voc tiver SQL Server no
computador local, digite (local).
Selecione Use Windows Authentication para as informaes de logon.
Observao
Se voc no faa ter integrada segurana definida backup em seu sistema, consulte o administrador de
rede.

6.
7.

Selecione o Northwind banco de dados a partir da lista.


Clique Test Connection para validar as informaes fornecidas, e, em
seguida, clique OK para estabelecer a conexo.
Uma nova conexo de banco de dados criado e adicionado caixa suspensa
no TableAdapter Configuration Wizard.
Observao
Se a conexo de banco de dados falhar, consulte o administrador do banco de dados.

8.

Verifique se seu banco de dados est selecionado na caixa suspensa e clique


em Next.

9.

Clique Next novamente para salvar a seqncia de conexo para o arquivo


de configurao.

10. No painel Choose a Command Type, verifique se que Use SQL


Statements est selecionado e clique em Next.
11. No painel, tipo SELECT * FROM Customers e Enter a SQL Statement Clique em
Next.
12. Na, clique Choose Methods to Generate Finish painel.
Voc criou uma conexo com o banco de dados, um dataset digitado, e
gerado o adaptador de tabela que interage com o banco de dados.
13. No menu File, escolha Save All
Voc precisar definir as configuraes de segurana do seu projeto para trabalhar
com segurana integrada. feito isso desativando o acesso annimo e ativar a
representao.
Para configurar a autenticao integrada do Windows para o projeto, voc deve
alterar os arquivos de projeto e configurar o projeto usando a Internet
Information Services ferramenta.

Visual Studio

222

Para configurar a autenticao integrada do Windows


1.

Inicie a Internet Information Services ferramenta. Administrative Tools


do Control Panel ele pode ser executado a partir de. (Para obter mais
informaes sobre como iniciar essa ferramenta, consulte o Windows ajuda
documentao).

2.

Expanda o n para o servidor.

3.

Expanda o Default Web Site n.

4.
5.
6.
7.

Clique com o boto direito do mouse no n de CustomersWebService e


escolha Properties No menu de atalho.
Clique na Directory Security guia.
Clique no Edit boto na seo Anonymous access and authentication
control.
Desmarque a Anonymous Access caixa de seleo.

8.

Marque a Integrated Windows authentication caixa de seleo. Agora


voc configurou seu diretrio de servio da Web XML.

9.

Retornar para o projeto no Visual Studio, clique duas vezes o arquivo


web.config no Solution Explorer.

10. Adicionar a seguinte marca na linha aps a <system.web> marca para


configurar a segurana integrada para o servio da Web XML.
<identity impersonate="true"/>

Expor o customersDataTable de seu objeto Business


A prxima etapa nessa explicao passo a passo para expor o objeto DataSet
voc apenas criado a partir seu objeto comercial. Essa ao tornar DataSet
disponveis para aplicativos Windows ou da Web para usar.
Adicionar mtodos para o servio da Web XML
1.

Partir do Build menu, escolha Build Solution para a criao da soluo.

2.

Na Solution Explorer, clique duas vezes Service.vb para abrir o Editor de


Cdigo.

3.

Adicionar uma linha para o corpo de classe para criar uma nova instncia do
adaptador de tabela como mostrado abaixo:
Visual Basic
Dim myAdapter As New DataSetTableAdapters.CustomersTableAdapter
DataSetTableAdapters.CustomersTableAdapter myAdapter = new
DataSetTableAdapters.CustomersTableAdapter();

4.

Adicionar um mtodo denominado GetCustomers para entregar uma


DataTable para o cliente.
Esse mtodo, mostrado a seguir retorna uma DataTable preenchido com os
dados do cliente.
Visual Basic
<WebMethod()> Public Function GetCustomers() As _ DataSet.CustomersDataTable Return
myAdapter.GetData End Function

C#

Visual Studio

223

[WebMethod] public DataSet.CustomersDataTable GetCustomers() { Return


myAdapter.GetData(); }

5.

Adicionar um mtodo denominado UpdateCustomers para propagar


alteraes a partir do cliente de volta para o banco de dados.
Esse mtodo, mostrado abaixo, apresenta um
DataSet.CustomersDataTable parmetro que contm os dados alterados e
atualiza o banco de dados atravs do CustomersTableAdapter.Update
mtodo. O Update mtodo aceita as alteraes no DataSet. DataSet
retornada para o cliente. O cliente ento usar este DataSet retornado para
atualizar sua prpria instncia da Customers DataTable. Para obter
informaes sobre o Update mtodo e aceitando alteraes em um DataSet,
consulte Introduo aos adaptadores de dados.
C#
[WebMethod] public void UpdateCustomers(DataSet.CustomersDataTable customerChanges) {
myAdapter.Update(customerChanges); }

Observao
Em um aplicativo de produo, voc deve adicionar a verificao de erros e exceo tratamento para
esses mtodos.
6.

Partir do File menu, escolha Save All.

7.

Partir do Build menu, escolha Build Solution.

Nas sees anteriores, voc ter criado um objeto comercial da camada


intermediria que contm um DataSet acoplado a um banco dados do SQL Server.
Voc adicionou cdigo ao meio-nvel CustomersWebService da Web XML servio
para obter dados de uma fonte de dados e atualizar a fonte de dados com
alteraes. Do GetCustomers o cliente acessar essas funes atravs de e
UpdateCustomers mtodos Servio da Web XML.
Crie a interface de usurio
Depois de criar um objeto comercial da camada intermediria para acesso a dados
e expondo-lo como um servio XML da Web, a prxima etapa para criar o cliente
interfaces. H dois cenrios nessa explicao passo a passo: um Windows Form
tradicionais e uma pgina de formulrios da Web. Ambos so criados, neste
exemplo como separados projetos na mesma soluo. No necessrio para que
voc possa criar as duas interfaces.
Interface do Usurio do Windows
Uma interface do Windows usa recursos do computador cliente para manipular
parte do processamento do aplicativo. Geralmente, uma interface do Windows
fornece maior funcionalidade e uma experincia mais rica que uma interface
baseada na Web. No menor de uma carga no servidor que com um front-end da
Web, porque o servidor no no precisa para executar todos os a lgica do
aplicativo. Alm disso, uma interface do Windows pode aproveitar dos recursos
disponveis atravs do sistema operacional, incluindo chamadas para o sistema de
arquivos e o registro.
O aplicativo do Windows, que consiste em um formulrio do Windows, ir conter
uma referncia da Web para CustomersWebService. Os dados no banco de dados
sero exibidos em um DataGridView controle quando um Load boto no

Visual Studio

224

formulrio clicado. Esse comportamento de carregamento implementado por


chamar mtodo do servio GetCustomers da Web XML. O DataGridView controle
permite direta edio, com alteraes de dados passadas diretamente para o
conjunto de dados subjacente. O formulrio tambm ter um boto Salvar. O
cdigo para este boto ser chamar mtodo do servio UpdateAuthors da Web
XML para salvar as alteraes de volta para o banco de dados.
Para criar o aplicativo Windows
1.

No menu File, aponte para Add e escolher New Project, para abrir a Add
New Project caixa de dilogo.

2.

Selecione Windows Application no painel Visual Studio Installed


Templates.

3.

Nome do Projeto CustomersWinClient e selecione um local para o projeto,


seguida, clique em OK.
O CustomersWinClient projeto adicionado soluo. Form1
automaticamente adicionado ao projeto e aparece o Windows Forms
Designer.

4.

Adicionar uma referncia da Web para o projeto Servio da Web ASP.NET


criado anteriormente:
1.

No Solution Explorer, clique com o CustomersWinClient projeto, e


clique Add Web Reference no menu de atalho

2.

Clique em Web Services In This Solution e clique em


CustomersService.

3.

Clique em Add Reference.


Agora voc pode criar uma instncia do DataSet DataSet em seu
aplicativo.

Para adicionar os controles ao formulrio


1.

Arraste um DataGridView controle da guia Data da caixa de ferramentas


para o formulrio.

2.

Do Toolbox arraste um Button controle da guia Common Controls Da


para o formulrio. Defina propriedades do boto Name para LoadData e sua
Text propriedade para Load.

3.

Do Toolbox Arraste outro Button controle da guia Common Controls Da


para o formulrio. Defina propriedades do boto Name para SaveData e sua
Text propriedade para Save.

4.
5.

Clique duas vezes no formulrio para abrir o Code Editor.


Sob a declarao de classe, criamos uma instncia do localhost.DataSet Como
mostrada abaixo:
Visual Basic
Dim CustomerData As New localhost.DataSet.CustomersDataTable
localhost.DataSet.CustomersDataTable CustomerData = new
localhost.DataSet.CustomersDataTable();

Para adicionar cdigo para o LoadData e SaveData botes


1.

No menu View, clique em Designer. Clique duas vezes no LoadData boto


para criar um manipulador de eventos vazio para o Click evento. Mtodos
Servio da Web XML so chamados, criando uma instncia da classe do

Visual Studio

225

servio primeiro e depois chamar os mtodos do servio. Nesse caso, o


GetCustomers mtodo for chamado. DataSet retornado ser mesclado com
DataSet CustomerData . A Credentials propriedade do servio da Web XML
usada para passar sua identidade para o servio da Web XML, que por sua
vez passa-no para o servidor de banco de dados. Adicione o cdigo mostrado
abaixo para o mtodo.
Observao
Se o servio XML da Web no est sendo executado no computador local, voc precisar substituir
localhost no exemplo de cdigo com o nome do servidor que executa o servio da Web XML.
C#
private void LoadData_Click(object sender, System.EventArgs e) { localhost.Service ws = new
localhost.Service(); ws.Credentials = System.Net.CredentialCache.DefaultCredentials;
CustomerData.Merge(ws.GetCustomers()); DataGridView1.DataSource = CustomerData; }

2.

No menu View, clique em Designer. Clique duas vezes no SaveData boto


para criar um manipulador de eventos vazio para o Click evento.
Observao
Em um aplicativo de produo, seria deseja considerar questes de simultaneidade de dados na etapa.
Para obter mais informaes, consulte Introduo ao Concurrency de dados no ADO.NET.

3.

Adicione o seguinte cdigo para os mtodos:

C#
private void SaveData_Click(object sender, System.EventArgs e) { if (CustomerData.HasChanges()) {
localhost.Service ws = new localhost.CustomersService(); ws.Credentials =
System.Net.CredentialCache.DefaultCredentials; ws.UpdateCustomers(CustomerData); } }

Para executar o aplicativo


1.
2.
3.

Partir do File menu, escolha Save All.


Selecione CustomersWinClient no Solution Explorer, clique com o boto
direito do mouse e escolha Set as StartUp Project.
Pressione CTRL + F5 para executar o aplicativo.
Uma janela exibida que contm um DataGridView vazia.

4.

Clique Load para preencher a tabela, faa algumas alteraes, e seguida,


clique Save para salvar as alteraes feitas.

Na seo anterior, voc adicionou um projeto do Windows Forms para a soluo


para atuar como uma interface do Windows. Voc conectado o formulrio Windows
ao servio da Web XML voc criado a primeira seo e usado DataGridView e
Button controles para criar a interface do usurio para carregar e atualizando os
dados.
Prximas etapas

Visual Studio

226

Neste ponto voc pode implantar seu aplicativo ou, se que voc deseja dar a
funcionalidade adicional de programa. Algumas das sugestes so fornecidos
abaixo.

Implantar a soluo
Voc pode implantar seu aplicativo da Web em um servidor ou criar um projeto
de instalao para o aplicativo Windows. Para obter informaes sobre como
implantar seu aplicativo Windows consulte Passo a passo: Distribuindo um
aplicativo baseado no Windows.

Acesso da Web Internet de suporte


Essa explicao passo a passo trata autenticao para aplicativos da intranet. O
aplicativo pode ser acessado pelos usurios atravs da Internet, portanto voc
pode precisa uma soluo de autenticao diferente. Para obter mais
informaes, consulte Usando a autenticao do IIS com representao
ASP.NET. Voc tambm pode investigar criando uma interface da Web para seu
aplicativo em combinao com protocolos de acesso da Web.

Considere segurana
Essa explicao passo a passo usa autenticao integrada do Windows para
controlar o acesso ao banco de dados. A segurana de banco de dados apenas
uma preocupao para aplicativos da Web. Para obter uma discusso de
segurana de aplicativo da Web, consulte Prticas recomendadas de segurana
bsicas para aplicativos da Web (Visual Studio).

Visual Studio

227

Controle de Cdigo Fonte para o Visual


Studio
Sem sair do ambiente de desenvolvimento, voc pode gerenciar seus projetos
individuais e de equipe facilmente usando os recursos do controle de cdigo fonte
do Microsoft Visual Studio. O controle de cdigo fonte do Visual Studio permite que
voc:

Gerencie o acesso ao banco de dados. O controle de cdigo fonte do Visual


Studio fornece suporte ao acesso de arquivos compartilhados e individuais.
Tambm prov mecanismos para mesclagem de arquivos.

Recuperar verses sucessivas de itens sob controle de verso. A maioria dos


pacotes do controle de cdigo fonte do Visual Studio armazenam dados que
distinguem as diferentes verses de um item sob controle de verso.

Manter o histrico detalhado dos itens sob controle de verso. Muitos pacotes
fornecem mecanismos para armazenar e recuperar o histrico de um item,
por exemplo, data e hora de criao.

Trabalhar de modo colaborativo em projetos e solues. Com o


compartilhamento de arquivos, possvel que diferentes projetos e solues
compartilhem o mesmo item sob controle de verso. Alteraes feitas em um
item compartilhado so refletidas em todos os projetos e solues.

Automatizar as operaes de controle de cdigo fonte mais comuns. Por


exemplo, um pacote do controle de de cdigo fonte do Visual Studio pode
definir uma interface de linha de comando que oferea suporte a recursos
importantes do controle de cdigo fonte. Voc pode usar essa interface em
arquivos em lotes para automatizar as tarefas de controle de cdigo fonte
executadas regularmente.

Recuperar excluses acidentais. O controle de cdigo fonte do Visual Studio


fornece suporte a restaurao da ltima verso do arquivo em que foi
realizado o check-in.

Economizar espao em disco no pacote do controle de cdigo fonte e no


servidor associado.

Introduo ao controle de origem


O Visual Studio oferece suporte ao controle de origem usando a camada Visual
Studio Integration Protocol (VSIP) no seu Integrated Development Environment
(IDE). VSIP pode hospedar uma variedade de pacotes de controle de origem,
geralmente implementados como plug-ins escritos para os protocolos apropriados.
Um exemplo de um plug-in de controle de origem o plug-in SourceSafe LAN
suportado pelo Visual SourceSafe. Para obter detalhes do plug-in, consulte a ajuda
do Visual SourceSafe.
Observao
O Visual Studio trata pacotes de controle de origem como plug-ins, embora eles possam ser
implementados como outros tipos de mdulos de software.

Visual Studio

228

O controle de origem do Visual Studio simplesmente um ambiente para plug-ins


de controle de origem de terceiros. Por isso, sua funcionalidade s ativada pela
instalao de um plug-in. Para usar um plug-in de controle da origem de terceiros,
voc deve, geralmente, instalar o aplicativo de terceiros e/ou o(s) plug-in(s) de
controle de origem nos computadores cliente e servidor para seu site. Depois de
instalar como indicado pelas instrues de terceiros, sua funcionalidade estar
disponvel atravs do Visual Studio. As operaes que esto ativas so variveis,
dependendo do plug-in de controle de origem. Voc deve consultar a documentao
de terceiros para detalhes operacionais de pacotes especficos.
Consulte "Viso Geral (controle de origem)" na ajuda do Visual Studio para obter
detalhes de design de controle de origem no Visual Studio. Esta seo da Ajuda
tambm fornece todas as informaes que sero necessrias para desenvolver um
pacote de controle de origem de terceiros que seja compatvel com Visual Studio.
Noes bsicas de controle de origem suportados pelo Visual Studio
O suporte de controle de origem bsico no Visual Studio inclui a configurao de
plug-in de controle de origem e opes de ambiente, comutao de plug-in, acesso
ao banco de dados, versionamento e manipulao de projetos do Visual Studio,
solues e arquivos e metadados associados. O controle de origem no Visual Studio
tambm aplica protocolos do controle de acessos ao banco de dados, por exemplo,
o estilo de trabalho Lock-Modify-Unlock, no qual um usurio que quer modificar um
arquivo deve verific-lo exclusivamente.
importante lembrar que voc deve usar controle de origem em mecanismos do
Visual Studio para interagir com um plug-in de controle de origem. No use outras
aplicaes de cliente apresentadas por terceiros que forneam o plug-in, por
exemplo, Visual SourceSafe Explorer. O uso apropriado dos mecanismos de
controle de origem no Visual Studio garante que somente arquivos corretos sejam
adicionados ao controle de origem e que os arquivos de projeto e soluo do Visual
Studio sejam atualizados com os detalhes corretos do plug-in especfico.
Configurao de Plug-in de Controle de Origem e Comutao
O controle de origem do Visual Studio suporta configurao e comutao de plug-in
atravs da entrada Source Control na caixa de dilogo Options. Esta entrada
acessvel selecionando-se Options no menu Tools do Visual Studio. Voc usar a
caixa de dilogo Options para selecionar o plug-in que voc deseja utilizar para
controle de origem, e configurar as opes de ambiente para o plug-in.
Antes que voc e sua equipe possam aproveitar as vantagens dos recursos de
controle de origem no Visual Studio IDE, voc deve:

Determinar se qualquer plug-in de controle de origem est disponvel.

Se o plug-in de controle de origem que voc deseja usar no estiver


instalado em seu computador, instale o produto de terceiros que oferea
suporte ao plug-in e reinicie o Visual Studio para registr-lo.

Criar um banco de dados de controle de origem de acordo com a


funcionalidade do determinado plug-in.

Envie um link, com o local do banco de dados, para todos os membros da


equipe.

Acesso ao Banco de dados


Comandos bsicos de acesso ao banco de dados, por exemplo, Check Out e Add
to Source Control, esto disponveis no menu File do Visual Studio. No entanto,
esses comandos so ativados somente depois que voc tiver escolhido o plug-in de

Visual Studio

229

controle de origem que deseja usar. Quando voc usa um dos comandos bsicos de
acesso ao banco de dados, o plug-in que voc tiver escolhido chama a
correspondente funcionalidade de terceiros e/ou o ambiente para concluir a
operao associada.
Algumas operaes de acesso so ativadas somente com o plug-in selecionado,
enquanto outras operaes esto somente disponveis quando voc tambm tiver
selecionado um projeto do Visual Studio, soluo, ou arquivo no Solution Explorer
do Visual Studio. Por exemplo, voc pode usar um comando Add to Source
Control depois de ter escolhido um plug-in. Entretanto, para usar um comando
Check In, voc deve ter um item selecionado no Solution Explorer.
Manipulao de arquivo pelo controle de origem
Voc pode adicionar os seguintes arquivos ao controle de origem do Visual Studio:

Arquivos de soluo (*.SLN).

Arquivo de projeto, por exemplo, arquivos *.csproj, *.vbproj.

Arquivos de configurao de aplicativos com base em XML, usados para


controlar comportamento em tempo de execuo de um projeto do Visual
Studio.
Arquivos que voc no pode adicionar ao controle de origem incluem o
seguinte:

Arquivos de opo de soluo de usurio (*.suo).

Arquivos de opo de projeto de usurios, por exemplo, arquivos *..


csproj.user, *. vbproj.user

Arquivos de informao da Web, por exemplo, *.csproj.webinfo, *.


vbproj.webinfo, que controlam o local da raiz virtual de um projeto da Web

Criar arquivos de sada, por exemplo, arquivos *.dll e *.exe.

A propagao da alterao do espao para nome


O controle de origem do Visual Studio oferece suporte propagao de alterao
do espao para nome em plug-ins controle de origem. Propagao de alterao
aplica-se a operaes de excluso, renomeao e mudana de local. Quando voc
solicitar uma operao para qual a propagao de alterao estiver ativada, o plugin de controle de origem ir alterar a cpia de trabalho do item controlado por
fonte, a cpia principal no banco de dados, e as cpias de outros usurios, quando
voc fizer o check-in no item e os outros usurios o recuperarem.
Como Controle de Origem Trata Solues e Projetos
Quando voc adiciona uma soluo ou projeto ao controle de origem, a primeira
coisa que um plug-in de controle de origem deve fazer identificar uma raiz nica
para o item que est sendo adicionado. Esta raiz um caminho ao diretrio pai de
todas as pastas de trabalho e arquivos que compem a soluo ou projeto.
Uma raiz nica geralmente mapeia para um caminho fsico no disco. Contudo, se
uma soluo contm arquivos ou projetos que residem em mais de uma unidade de
disco, no h nenhuma pasta fsica qual uma raiz nica pode fazer o mapa. Uma
soluo pode mapear a unidade de disco, mas a raiz nica de um controle de
origem, no. Para apoiar esta situao, o controle de origem do Visual Studio apia
o conceito de uma raiz super-unificada. Este tipo da raiz um continer virtual e

Visual Studio

230

todos os projetos e os arquivos em uma soluo controlada por fonte esto


localizados abaixo dele.
Quando voc adiciona uma soluo usando um plug-in de controle de origem com
recursos avanados, o plug-in cria uma pasta raiz vazia de soluo no banco de
dados. Esta pasta conter todos os itens em uma soluo controlada por fonte. Por
padro, essa pasta < nomedasolucao >.root.
Observao
Quando voc adicionar um projeto nico ao controle de origem, a pasta .root no ser criada.
O uso de soluo raiz oferece os seguintes benefcios:

Menos prompt. A soluo raiz minimiza o nmero potencial de ligaes de


controle de origem para uma soluo e, assim, minimiza o nmero de avisos
aos usurios quando voc adiciona uma soluo para controle de origem e
executa outras tarefas.

Encapsulamento do projeto. A soluo raiz garante que todos os projetos em


uma soluo possam ser identificados como pertencentes ao mesmo
conjunto, mesmo quando uma ou mais projetos residam em diferentes
parties ou computadores.

Voc pode desativar a criao de pasta < nomedasolucao >.root, mas isso no
recomendvel. Para mais informaes, consulte COMO: desativar a criao da pasta
< nomedasolucao>.root.
Solues no Visual Studio so bem-formadas ou no. Uma soluo bem-formada
uma soluo para a qual a estrutura hierrquica no disco combina com a sua
estrutura no Solution Explorer. Todos os projetos em uma soluo bem-formada
so armazenados em subpastas da pasta soluo no disco. Se a soluo bemformada quando voc a adiciona ao controle de origem, o plug-in do controle de
origem cria uma pasta abaixo da pasta *.root para conter as cpias principais de
arquivo de soluo (*.sln) e arquivos de opo de soluo de usurios (*.suo) para
a soluo. Finalmente, o plug-in de controle de origem cria uma pasta sob a pasta
.sln para cada projeto adicional no banco de dados do controle de origem.
Se uma soluo no bem-formada, o plug-in do controle de origem cria uma
pasta para a soluo e para o seu projeto inicial. Em seguida, as pastas para cada
projeto adicional so criadas em paralelo com a pasta de soluo.
Modos de exibio de uma soluo ou projetos
Visual Studio fornece trs modos diferentes de exibio de uma soluo controlada
por origem ou projeto: design, controle de origem, e fsico. Muitas tarefas de
controle de origem so mais fceis de executar quando no h um mapeamento
um-para-um entre os elementos individuais desse modo de visualizao. Contudo,
se voc criar as suas solues e projetos e os acrescentar ao controle de origem
usando as configuraes padres do Visual Studio, suas solues e projetos no
sero, necessariamente, organizados do mesmo modo no disco como eles esto no
Solution Explorer e no banco de dados.
O modo design de uma soluo ou projeto, que voc v no Solution Explorer, um
retrato lgico do contedo de uma soluo ou projeto. Geralmente, o modo design
limpo e significativo. Arquivos desnecessrios esto ocultos e arquivos de vrios
locais fsicos diferentes so colocados em um continer de projeto nico.

Visual Studio

231

O modo de controle de origem de uma soluo ou projeto, que voc v em um


aplicativo autnomo, como Visual SourceSafe Explorer, tambm um modo de
exibio lgico de uma soluo ou projeto. Entretanto, o modo de exibio de
controle de origem no , necessariamente, um reflexo do modo de exibio lgico.
O modo de exibio fsico de uma soluo ou projeto, que voc v no Windows File
Explorer, provavelmente no refletir a estrutura hierrquica da lgica ou viso do
controle de origem.
As diretrizes a seguir podem ajud-lo a obter fidelidade organizacional entre o
modos de exibio de design, fsico e controle de origem de suas solues
controladas por fonte e projetos:

Primeiro, crie uma soluo em branco e adicione projetos a ela. Isso o ajuda
a manter a relao lgica pai-filho entre uma soluo e seus projetos no
armazenamento. Em seguida, quando voc adicionar a soluo ao controle
de origem, o modo de exibio de controle de origem e design ir espelhar a
hierarquia da soluo no disco.

Atribua a cada soluo um nome exclusivo e descritivo que se diferencia do


nome de cada um dos projetos contidos.

Evite adicionar arquivos de link para uma soluo ou projeto controlado por
fonte origem.

Se possvel, armazene todos os arquivos de uma soluo ou projeto em uma


unidade de disco.

Conexes de controle de origem e ligaes


O Visual Studio define uma conexo como uma ligao de dados ativa entre o
Visual Studio e um servidor de banco de dados. Quando voc adiciona uma soluo
ou projeto ao controle de origem, o plug-in de controle de origem copia o item e
todo o seu contedo do disco para o banco de dados. Uma pasta controle de origem
criada para cada pasta que contm um arquivo soluo ou projeto. Aps adicionar
o item, o plug-in de controle de origem vincula sua cpia de trabalho local de uma
soluo ou projeto sua verso no banco de dados.
Cada soluo controlada por origem tem, pelo menos, uma ligao de controle de
origem. No entanto, um item pode ter vrias ligaes e requerer vrias conexes
com o banco de dados. O nmero de vnculos e conexes depende de como voc
cria a soluo inicialmente e se seus projetos e arquivos esto todos salvos na
mesma partio.
Como um exemplo de vnculos e conexes, pense em uma soluo bem formada de
controle de origem, com vrios projetos, como uma casa com vrias salas. Quando
voc constri a casa, voc pode instalar uma linha de dados nica de alta
velocidade de uma sala rua. Voc instala um roteador atrs de um firewall para
distribuir a alimentao de dados para outras salas e voc paga um provedor de
servios de Internet para conectar sua casa com a Internet.
Voc pode pensar em vnculo de controle de origem como representao da linha
de dados nica criada para a casa. Quando voc abre uma soluo controlada por
fonte, uma conexo criada atravs dessa ligao. A conexo estabelece um
'aperto de mo' entre a sua cpia de trabalho da soluo no disco e a cpia mestra
da soluo no banco de dados.
Se uma soluo controlada por origem no for bem formada, voc pode v-la como
uma casa na qual cada sala unida Internet diretamente. Tarifas de Internet so
mais caras do que as da casa de conexo nica, os custos de manuteno so

Visual Studio

232

superiores, e mudar para um provedor de servios de Internet diferente muito


mais difcil e demorado.
Idealmente, uma soluo e seu projeto compartilham uma ligao de controle de
origem nica. Solues Single-Binding so mais gerenciveis do que solues
Multiple-Binding. Elas tornam mais fcil:

Desconectar do controle de origem para trabalhar off-line.

Conectar-se ao banco de dados aps a reconexo com a rede.

Ramificar em uma etapa.

Voc pode criar uma soluo de multiprojeto com uma ligao nica, criando uma
soluo em branco antes de adicionar seus projetos. Voc tambm pode fazer isso,
selecionando a opo Create Directory for Solution na caixa de dilogo New
Project, ao criar um par de soluo de multiprojeto.
Se voc criar um par de soluo de multiprojeto em uma etapa e no selecionar a
opo Create Directory for Solution na caixa de dilogo New Project
(desativado por padro), uma segunda ligao ser criada quando voc adicionar
um segundo projeto soluo. Uma ligao criada para o projeto inicial e para a
soluo. Ligaes adicionais so criadas para cada projeto adicional.
Terminologia de controle de origem
A documentao do Visual Studio usa um nmero de termos para descrever
recursos e conceitos de controle de origem. A tabela a seguir define alguns dos
termos comuns.
Verso base
A verso do servidor de um arquivo do qual uma verso local derivada.
Vinculao
Informao que correlaciona uma pasta de trabalho de uma soluo ou
projeto no disco pasta no banco de dados.
Ramificao
Processo de criar uma nova verso, ou ramificao, de um arquivo
compartilhado ou projeto sob controle de origem. Uma vez que uma
ramificao tenha sido criada, as duas verses sob controle de origem tero
um histrico compartilhado at um determinado ponto e histricos
divergentes aps esse ponto.
Conflito
Duas ou mais alteraes diferentes para a mesma linha do cdigo em
situaes em que dois ou mais desenvolvedores tenham feito o check-out e
editado o mesmo arquivo.
Conexo
Uma ligao de dados ativa entre um cliente do controle de origem (por
exemplo, Visual Studio) e um servidor de banco de dados do controle de
origem.
Banco de dados
Local onde todas as cpias mestre, histrico, estruturas de projeto e
informaes do usurio so armazenados. Um projeto sempre est contido
em um banco de dados. Vrios projetos podem ser armazenados em um
banco de dados, e vrios bancos de dados podem ser usados. Outros termos

Visual Studio

233

normalmente usados para um banco de dados so repositrio e


armazenamento.
Histrico
Registro de alteraes de um arquivo desde que ele tenha sido adicionado,
inicialmente, no controle de origem. Com o controle de verso, voc pode
retornar a qualquer ponto no histrico do arquivo e recuperar o arquivo como
ele existia at esse momento.
Rtulo
Nome definido pelo usurio anexado a uma verso especfica de um item
controlado por fonte.
Cpia local
Arquivo em uma pasta de trabalho do usurio para a qual so copiadas
alteraes antes que seja feito um check-in. Uma cpia local , s vezes,
chamada de uma cpia de trabalho.
Cpia mestra
A verso mais recente do check-in de um arquivo controlado por fonte, em
oposio cpia local de um arquivo em sua pasta de trabalho. Outros
termos para cpia mestra so verso do servidor e verso do banco de
dados.
Mesclar
Processo de combinar diferenas entre duas ou mais verses modificadas de
um arquivo em uma nova verso de arquivo. Mesclar pode afetar diferentes
verses do mesmo arquivo ou alteraes feitas a uma mesma verso do
arquivo.
Arquivo compartilhado
Um arquivo com verses que residem em mais de uma localidade de controle
de origem. Outros termos para um arquivo compartilhado so cpia e atalho.
Raiz soluo
Uma pasta vazia em um banco de dados que contm todos os itens de uma
soluo controlada por origem. Por padro, essa pasta < nomedasolucao
>.root.
Raiz Super-unificada
Um continer virtual abaixo do qual todos os projetos e os arquivos em uma
soluo controlada por origem esto localizados. Por exemplo [SUR]: \. a
raiz super-unificada de uma soluo controlada por origem contendo projetos
localizados em [SUR]:\C:\Solucao\Proj1 e [SUR]:\D:\Proj2.
Raiz unificada
Um caminho para a pasta pai de todas as pastas de trabalho e arquivos em
uma soluo ou projeto controlado por origem. Por exemplo, C:\Solucao a
raiz unificada de uma soluo controlada por origem contendo arquivos
localizados em C:\Solucao, C:\Solucao\Proj1 e C:\Solucao\Proj2.
Pasta de trabalho
Local no qual as cpias locais de itens controlados por origem so
armazenados, geralmente no seu prprio computador. Outro termo para uma
pasta de trabalho espao de trabalho.

Visual Studio

234

O que h de novo no controle de origem para o Visual Studio


O Visual Studio tem dado suporte a controle de origem e integrao de plug-ins de
controle de origem h algum tempo. Entretanto, a verso atual inclui um nmero
de aperfeioamentos de integrao. Para informaes sobre novos recursos da
parte de controle de origem do SDK do ambiente Visual Studio, consulte
"Novidades para controle de origem"
Alternncia de plug-in
Controle de origem agora permite alternar entre todos os tipos de plug-ins de
controle de origem em Options no menu Tools. Esta alternncia permite a
substituio completa da interface do usurio e permite um plug-in por soluo.
Melhorias no acesso ao projeto via aberturas assncronas
Controle de origem do Visual Studio foi aprimorado para abrir solues de forma
assncrona e refletir o progresso de uma operao de abertura modificando os
cones no Solution Explorer. O recurso de abertura assncrona marca projetos que
ainda esto sendo baixados com uma ampulheta, e marca projetos totalmente
baixados para acesso assim que eles estiverem disponveis. Isso significa que voc
pode abrir e comear a trabalhar em um projeto mesmo que o Visual Studio esteja
ainda abrindo os outros projetos na soluo.
Observao
Este recurso est apenas disponvel para Visual Basic, C#, J# e projetos da Web e no possui suporte de
todos os plug-ins de controle de origem.
Melhorias na caixa de dilogo do Visual Studio para dar suporte a controle de
origem
Os seguintes aperfeioamentos de acesso a arquivo foram feitos nas caixas de
dilogo do Visual Studio:

Agora voc pode adicionar projetos ao controle de origem e abri-los


facilmente usando a nova guia Source Control Stores na caixa de dilogo
Open Project.

Voc pode adicionar um arquivo existente do controle de origem a um


projeto usando a caixa de dilogo Add Existing Item.

Voc pode adicionar automaticamente solues e projetos ao controle de


origem marcando a caixa de seleo Add to Source Control na caixa de
dilogo New Project.

Sincronizao de excluses, renomeaes e movimentaes


Para oferecer suporte a propagao de alterao de namespace, a verso mais
recente de controle de origem sincroniza excluses, renomeaes, e
movimentaes com o banco de dados. Quando voc fizer uma alterao voc ser
solicitado a propagar a alterao, enquanto outros usurios podero sincronizar
atravs de operaes de recuperao. Em verses anteriores, se voc exclua,
renomeava ou movia um item no servidor, ele permanecia na sua pasta de trabalho
mesmo aps a sincronizao.
Melhorias nas operaes bsicas de controle de origem

Visual Studio

235

Os seguintes aperfeioamentos foram feitos nas operaes bsicas de controle de


origem do Visual Studio:

Voc pode agora fazer um check-out de um arquivo de uma pasta de


trabalho local sem precisar baixar pela rede a verso mais recente do
arquivo no banco de dados.

Agora checkouts so automticos e nmero de solicitaes reduzido.

Voc tem uma opo para configurar o Visual Studio para automaticamente
obter do controle de origem a ltima verso de todos os itens da soluo
quando voc abrir uma soluo .

Voc pode configurar o Visual Studio para fazer silenciosamente check-out de


arquivos em edio e fazer automaticamente check-in das suas alteraes
quando voc fechar a soluo.

Suporte ao Visual Web Developer


O Visual Web Developer pode agora acessar recursos de controle de origem de
projeto na Web, como baixar em qualquer local. Em verses anteriores do Visual
Studio, o local estava embutido em cdigo para baixar em c:\inetpub\wwwroot.

Execuo de Tarefas de Controle de Origem


Esta seo descreve tarefas gerais de controle de origem que voc pode executar
no Visual Studio para qualquer plug-in. Operaes bsicas de controle de origem
como check in, check out e exibio de histrico so amplamente especficas de
plug-in, embora essas operaes possam fazer uso de alguns dos elementos de
interface de usurio padro suportados pelo pacote de controle de origem do Visual
Studio. Para tarefas de plug-in-especfico, entretanto, voc deve consultar a
documentao do plug-in de controle de origem especfico.
Observao
Muitos desses procedimentos referem-se seleo de comandos bsicos de controle de origem do menu
File do Visual Studio. Alternativamente, voc pode acessar muitos dos comandos clicando com o boto
direito do mouse em um item controlado por fonte no Solution Explorer.

COMO: Adicionar um projeto ao controle de origem


O controle de origem do Visual Studio permite adicionar um projeto e seu arquivo
de soluo ao controle de origem ao mesmo tempo. Se uma soluo j estiver sob
controle de origem, voc pode adicionar um novo projeto a ela. Fazendo check-in
de uma soluo automaticamente coloca qualquer novos projetos que esta contm
sob controle de origem.
Para adicionar um projeto e soluo ao controle de origem
5.

No Visual Studio, crie um novo projeto. Se voc tiver dvidas sobre como
fazer isso, procure a Ajuda do Visual Studio.

6.

Selecione a soluo que contm o novo projeto.

7.

No menu File, clique em Source Control.

8.

Clique em Add Solution to Source Control e selecione a base de dados de


projeto qual quer adicionar a soluo usando os procedimentos do plug-in
de controle de origem sendo utilizado.

Visual Studio

236

Para adicionar os projetos selecionados ao controle de origem


7.

No Visual Studio, abra uma soluo existente no Solution Explorer.

8.

Crie novos projetos conforme necessrio na soluo. Se voc tiver dvidas


sobre como fazer isso, h vrios procedimentos na Ajuda do Visual Studio.

9.

Faa o check-out do arquivo de soluo, pois o controle de origem precisa


incluir os novos detalhes do projeto nesse arquivo. Use o procedimento de
check-out especficos para o plug-in de controle de origem em uso.

10. No menu File, clique em Source Control, e em seguida, clique em Add


Selected Projects to Source Control
11. Voc ser solicitado a decidir se deseja adicionar os projetos como subpastas
da soluo ou como pastas separadas. Na maioria das situaes, voc deve
adicionar os projetos pasta da soluo no banco de dados.
12. Faa o check-in da soluo de volta no controle de origem, usando o
procedimento de check-in especfico para o plug-in de controle de origem em
uso.

COMO: acoplar ou desacoplar uma soluo ou projeto


Voc deve ligar uma soluo ou projeto ao controle de origem de maneira que este
item tenha acesso aos comandos bsicos de controle de origem, tais como Check
Out, Check In, e Get. Uma ligao associa a cpia local do item cpia mestre no
banco de dados.
Desacoplar uma soluo ou projeto controlado por origem remove o item do
controle de origem, desassociando a cpia local da cpia mestre no banco de
dados, e desativando todos os comandos de controle de origem. Talvez voc
precise desacoplar um item se:

Voc precisar relig-lo verso de backup do banco de dados quando o


servidor primrio for desligado. Voc pode conectar a um servidor de backup,
religar a sua cpia da soluo cpia mestre do servidor no banco de dados
de backup, e continuar trabalhando normalmente. Para mais informaes,
consulte COMO: conectar ou desconectar uma soluo ou projeto.

Voc desejar iniciar uma nova ramificao sem nenhum histrico de controle
de origem em uma pasta de banco de dados diferente.

Voc desejar utilizar um outro plug-in de controle de origem .

Desacoplar um item no o remove permanentemente do banco de dados. Para


obter mais informaes de como excluir um item, consulte COMO: excluir um item
controlado por origem.
Para ligar uma soluo ou projeto ao controle de origem
5.

No Visual Studio, abra o Solution Explorer e selecione uma soluo ou


projeto a ser ligado.

6.

No menu File, clique em Source Control, depois em Change Source


Control.

7.

Na caixa de dilogo Change Source Control, clique em Bind.

8.

Selecione o banco de dados e local ao qual ligar, e clique em OK.

Visual Studio

237

Para desacoplar uma soluo ou projeto do controle de origem


5.

No Visual Studio, abra o Solution Explorer e selecione uma soluo ou


projeto a ser desacoplado.

6.

No menu File, clique em Source Control, depois em Change Source


Control.

7.

Na caixa de dilogo Change Source Control, clique em Unbind.

8.

Clique em OK.

COMO: alterar o local da pasta de trabalho


s vezes o Solution Explorer indica locais de pasta por um sublinhado ondulado.
Essas entradas representam caminhos invlidos relativos pasta de trabalho. Para
corrigir caminhos invlidos, voc deve alterar o local da pasta de trabalho.
Para alterar o local da pasta de trabalho
5.
6.
7.
8.

No Visual Studio, abra o Solution Explorer.


Clique em um caminho invlido na coluna Enter Working Copy Location
Here.
Clique no boto de reticncias ()
Digite um caminho vlido, por exemplo, http://<host local>/pasta1, e clique
em OK. Se a pasta ainda no existir, o Visual Studio criar uma.

Como conectar ou desconectar uma soluo ou um projeto


Conforme descrito em Introduo ao Controle de Cdigo Fonte, uma soluo no
Visual Studio pode ter um ou mais vnculos com o controle de cdigo fonte. Uma
conexo criada automaticamente sempre que um item vinculado ao controle de
cdigo fonte conforme descrito em Como vincular ou desvincular uma soluo ou
um projeto. Pode-se criar uma conexo manualmente conforme descrito neste
tpico.
Se voc desconectar seu computador da rede ou perder a conexo por alguma
outra razo, voc deve desconectar temporariamente os vnculos da soluo a fim
de editar os projetos e os arquivos nela contidos. Quando voc desconecta uma
soluo do controle de cdigo fonte, o nico comando bsico que voc pode usar
o comando de check-out. Ao realizar o check-out de um item desconectado, a cpia
local do item, contida na sua pasta de trabalho, torna-se editvel. Quando for
possvel acessar o banco de dados novamente, voc pode reconectar a soluo e
sincronizar sua cpia local com a cpia mestre mais recente.
Procedimentos
Para conectar uma soluo ou um projeto ao controle de cdigo fonte
5.

No Visual Studio, abra a janela Solution Explorer e selecione os itens a serem


conectados.

6.

No meu File , clique em Source Control e depois em Change Source


Control.

7.

Na caixa de dilogo Change Source Control, clique em Connect.

Visual Studio

238

8.

Clique em OK.

Para desconectar uma soluo ou projeto de controle de cdigo fonte


5.

No Visual Studio, abra a janela Solution Explorer e selecione os itens a serem


desconectados.

6.

No menu File, clique em Source Control e depois em Change Source


Control.

7.

Na caixa de dilogo Change Source Control, clique em Disconnect.

8.

Clique em OK.

COMO: copiar um item sob controle de origem


Voc pode copiar um projeto de uma soluo sob controle de origem para outra, ou
copiar um arquivo de um projeto sob controle de origem para outro. Quando voc
copia um item, uma nova ramificao criada no banco de dados, junto com o
histrico e outros metadados do item. Criar ramificaes permite que sua equipe
desenvolva duas verses de um produto simultaneamente e independentemente.
Observao
Se voc copiar um projeto sob controle de origem para uma soluo que no est sob controle de origem,
no podero ser criadas ramificaes no projeto.
Para copiar um projeto sob controle de origem
8.
9.

No Visual Studio, abra o Solution Explorer.


Clique com o boto direito do mouse na soluo de destino no Solution
Explorer.

10. No menu File, clique em Add e depois em Existing Project.


11. Na caixa de dilogo Add Existing Project, clique no nome de seu plug-in de
controle de origem.
12. Clique duas vezes no banco de dados contendo o projeto que voc deseja
copiar.
13. Selecione o projeto, e clique em Add.
14. Clique em OK.
Para copiar um arquivo sob controle de origem
8.
9.

No Visual Studio, abra o Solution Explorer.


Clique com o boto direito do mouse no projeto de destino no Solution
Explorer. Este projeto deve estar no mesmo banco de dados que o projeto de
origem.

10. No menu File, clique em Add e depois em Existing Item.


11. Na caixa de dilogo Add Existing Item, clique no nome de seu plug-in de
controle de origem.
12. Clique duas vezes no banco de dados que contm o arquivo que voc deseja
copiar.

Visual Studio

239

13. Selecione o arquivo, e clique em Add.


14. Clique em OK.

COMO: excluir um item controlado por origem


Quando voc exclui um item controlado por origem, o Visual Studio exclui
automaticamente a cpia local, se o plug-in de controle de origem apoiar a
propagao de modificao de espao para nome. Caso contrrio, ele o consultar
para obter instrues sobre excluso. Para mais informaes sobre propagao de
modificao de espao para nome, consulte Introduo ao controle de origem.
A maioria dos plug-ins para controle de origem para o Visual Studio no exclui
permanentemente itens de um banco de dados. Para obter mais informaes sobre
como excluir permanentemente um item de controle de origem, consulte a
documentao do produto de terceiros para seu plug-in.
Para excluir um item controlado por origem
3.
4.

No Visual Studio, abra Solution Explorer.


Clique com o boto direito do mouse no item que deseja excluir, depois
clique Delete ou Remove.

Observao
O comando Remove s estar disponvel para projetos a base de referncia, como projetos C++.
8.

Voc ser solicitado para fazer o check-out no item. Faa o check-out como
apoiado pelo seu plug-in de controle de origem.

9.

Se tiver clicado em Remove, anteriormente, clique em Delete na caixa de


dilogo que aparece.

10. Na caixa de dilogo Source Control, clique em Delete the item(s) locally
and in the source control store.
11. Em Solution Explorer, faa o check-in do item como apoiado pelo seu plug-in
de controle de origem.
12. Notifique a excluso a qualquer pessoa que possa ter feito o check-out do
projeto ao qual o item excludo pertence.
13. Se houver suporte para a propagao de modificao de espao para nome,
permita que os outros usurios faam a atualizao de suas cpias locais. Eles
recebero uma mensagem notificando-os da excluso.
14. Se no houver suporte propagao de modificao de espao para nome,
voc ter de informar aos outros usurios para removerem manualmente suas
cpias locais do item excludo.

Como ativar recuperao automtica


Voc pode configurar o Visual Studio para recuperar automaticamente a verso
mais recente de um item sob controle de verso sempre que voc abri-lo. Isso
garante que a cpia local permanecer sincronizada com a cpia mestra.

Visual Studio

240

Procedimentos
Para obter a verso mais recente automaticamente
5.

No Visual Studio, no menu Tools, clique em Options.

6.

Na caixa de dilogo Options, clique em Source Control e em seguida clique


em Environment.

7.

Marque a caixa de seleo Get everything when a solution or project is


opened.

8.

Clique em OK.

Como desativar a criao da pasta <solutionname>.root


Quando voc adiciona uma soluo ao controle de cdigo fonte, o respectivo plug-in
cria automaticamente uma pasta < solutionname >.root vazia no banco de dados.
Essa pasta ir conter a raiz unificada da soluo. Para mais informaes sobre a
raiz unificada, consulte Introduo ao controle de cdigo fonte.
Cuidado
Desativar a criao automtica da pasta < solutionname >.root ir alterar o comportamento do plug-in
sempre que uma soluo com vrios projeto for adicionada ao controle de cdigo fonte. Por exemplo,
operaes que adicionam projetos levaro mais tempo para concluir. Alm disso, voc ter que responder
a solicitaes redundantes ao executar operaes de controle de cdigo fonte em vrios projetos.
Para desativar a criao automtica da pasta < solutionname >.root
7.
8.
9.

Na rea de trabalho do Windows, clique em Start e, em seguida, clique em


Run
Digite Regedit e clique em OK.
Abra \SourceControl HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\
< nmero de verso >.

10. Selecione a chave DoNotCreateSolutionRootFolderInSourceControl e clique


em Edit e depois em Modify.
11. Na caixa de dados Value, troque 0 por 1.
12. Clique em OK para aceitar a alterao do registro.

COMO: Ativar Check-ins automticos


Voc pode configurar o Visual Studio para que efetue automaticamente check-in
nas suas alteraes no controle de origem quando voc fechar uma soluo.
Automatizar o processo de check-in garante que seus trabalhos mais recentes se
tornem periodicamente disponveis para outros membros da equipe, mesmo se
voc esquecer fazer check-in manualmente.
Para ativar checkins automticos
5.

No Visual Studio, no menu Tools, clique em Options.

Visual Studio

241

6.

Na caixa de dilogo Options, clique em Source Control, clique em


Environment.

7.

Marque a caixa de seleo Check in everything when closing a solution


or project.

8.

Clique em OK.

COMO: desativar check-outs automticos


O controle de origem no Visual Studio permite check-outs automticos por padro.
Esta seo descreve como voc pode configurar o Visual Studio para desativar
check-outs automticos.
Procedimentos
Para desativar check-outs automticos
5.

No Visual Studio, no menu Tools, clique em Options.

6.

Na caixa de dilogo Options, clique em Source Control, e depois clique em


Environment.

7.

Na caixa Editing, desmarque a caixa de seleo Check out automatically.

8.

Clique em OK.

COMO: ativar ou desativar controle de origem


O controle de origem no Visual Studio estar disponvel somente se um plug-in
vlido de controle de origem estiver instalado e registrado para ser usado em seu
computador. O plug-in registrado durante a instalao do software de terceiros. O
Visual Studio usa esse registro para localizar os plug-ins e as localidade de seus
bancos de dados padro sempre que voc abrir a IDE do Visual Studio. Ela lista
todos os plug-ins disponveis na aba Plug-in Selection da entrada Source
Control na caixa de dilogo Options.
Se voc no tiver nenhum plug-in de controle de origem compatvel instalado em
seu computador, o controle de origem no Visual Studio no est ativado. Voc no
ver nenhuma entrada Source Control no menu File.
Cuidado
Voc pode usar um plug-in de controle de origem no Visual Studio e o aplicativo autnomo de controle
de origem correspondente para gerenciar o mesmo projeto ou soluo. Entretanto, fazer check-outs de
itens de ambos os programas para a mesma pasta de trabalho no recomendvel. Isso pode levar a
situaes em que solues e projetos no podem ser acessados no controle de origem.
Para ativar um determinado plug-in de controle de origem
5.
6.
7.

No Visual Studio, no menu Tools, clique em Options.


Na caixa de dilogo Options , clique em Source Control, clique em Plug-in
Selection.
Selecione o plug-in de controle de origem que deseja usar.

Visual Studio

242

8.

Clique em OK.

Para desativar completamente o controle de origem


5.
6.

No Visual Studio, no menu Tools, clique em Options.


Na caixa de dilogo Options, clique em Source Control, clique em Plug-in
Selection.

7.

Selecione None na caixa Current source control plug-in.

8.

Clique em OK.

COMO: excluir um arquivo de controle de origem


Se a soluo em voc estiver trabalhando contm arquivos que no requerem
controle de origem, voc pode utilizar o comando Exclude from Source Control
para marcar adequadamente o arquivo. Quando voc fizer isso, o arquivo
permanecer no banco de dados, mas no mais realizado check-in ou check-out
do mesmo a partir do projeto que o contm.
Observao
Arquivos gerados so excludos do controle de origem por padro. Um arquivo gerado um que pode ser
recriado inteiramente pelo Visual Studio, de acordo com o contedo de outro arquivo do Visual Studio.
Para excluir um arquivo do controle de origem
4.

No Visual Studio, abra Solution Explorer e selecione o arquivo a ser excludo.

5.

No menu File, clique em Source Control, clique em Exclude from Source


Control.

6.

Quando voc estiver pronto para colocar o arquivo sob controle de origem,
voc pode acessar o menu File, clicar em Source Control e ento desmarcar
Exclude from Source Control.

COMO: mover uma raiz de ligao de projeto


Voc talvez necessite mover a raiz de ligao de um projeto se alguns arquivos que
voc deseja adicionar ao projeto estiverem localizados fora da raiz do projeto.
Para mover uma raiz de ligao de projeto
10. No Visual Studio, abra o Solution Explorer e selecione um projeto que
contm arquivos que estejam fora da pasta da soluo ou raiz do projeto.
11. No menu File, clique em Source Control, depois em Change Source
Control.
12. Na caixa de dilogo Change Source Control, clique em Unbind.
13. Na caixa de mensagem, clique em Unbind para confirmar que voc deseja
remover o projeto do controle de origem.
14. Se a soluo e o projeto compartilham uma ligao de controle de origem,
desacople a soluo tambm.

Visual Studio

243

15. Com o projeto selecionado, acesse novamente a caixa de dilogo Change


Source Control e clique em Bind.
16. Se solicitado, faa logon no seu banco de dados de controle de origem.
17. Selecione a pasta pai na qual todos os arquivos no projeto esto
armazenados. Na maioria dos casos, a pasta <nomesoluo>.root esta
pasta.
18. Se voc teve que desacoplar a soluo juntamente com o projeto, voc deve
relig-la a uma pasta de banco de dados.

COMO: mover um item controlado por fonte


No Visual Studio, voc pode mover um item controlado por origem de uma pasta de
projeto ou soluo para outro. Quando voc move um item, voc move todo o
histrico e metadados de controle de origem associados se o plug-in de controle de
origem apoiar a propagao de modificao de espao para nome. Tanto a origem
quanto os itens de destino envolvidos em uma operao de mudana de local
devem ser localizados no mesmo banco de dados de controle de origem. Para mais
informaes sobre propagao de modificao de espao para nome, consulte
Introduo ao controle de origem.
Observao
A operao de mudana s pode ocorrer entre dois projetos na mesma soluo, ou entre duas solues.
Para uma mudana de local ser ativada, uma soluo e seus projetos devem compartilhar uma vinculao
de controle de origem. Para mais informaes, consulte COMO: acoplar ou desacoplar uma soluo ou
projetos.
Para mover um item controlado por origem
3.
4.

No Visual Studio, abra o Solution Explorer.


Clique no item que voc deseja mover e arraste-o para a soluo ou projeto
de destino no Solution Explorer.

COMO: abrir um projeto ou soluo do controle de origem


Quando voc abre um projeto ou soluo do controle de origem, o Visual Studio
baixa a cpia mestra mais recente do item e de todos os arquivos contidos para a
pasta de trabalho local. Depois que voc recuperar uma cpia local do item, voc
no precis abri-lo a partir do controle de origem novamente. Voc pode continuar
a usar os comandos de controle de origem para o seu plug-in especfico de controle
de origem.
Cuidado
Se voc repetir um dos procedimentos neste tpico, voc criar vrias pastas de trabalho e vrias
instncias dos arquivos que elas contm.

Visual Studio

244

Para abrir um projeto ou soluo do controle de origem


7.

No Visual Studio, no menu File, clique em Open.

8.

Clique em Project/Solution.

9.

Na caixa de dilogo Open Project , selecione Close Solution if not


already selected.

10. No lado esquerdo da caixa, clique em My <source control plug-in>


Stores, e depois clique em Open.
11. Procure e selecione o seu arquivo de projeto (*.proj) ou de soluo (*.sln),
altere a pasta de destino, e depois clique em Open.
12. Se voc j tiver uma cpia local da soluo ou do projeto que voc est
abrindo do controle de origem, voc ser solicitado a substituir a cpia local
de todos os arquivos e projetos na soluo. Responda s perguntas conforme
necessrio.
Para abrir um projeto da Web do controle de origem
6.

No Visual Studio, no menu File, clique em Open.

7.

Clique em Web Site.

8.

Na caixa de dilogo Open Web Site, clique em My <source control plugin> Stores, depois clique em Open.

9.

Procure e selecione o projeto da Web, altere a pasta de destino, e depois


clique em Open.

10. Se voc j tiver uma cpia local do projeto da Web que voc est abrindo do
controle de origem, voc ser solicitado a substituir a cpia local de todos os
arquivos e projetos na soluo. Responda s perguntas conforme necessrio.

COMO: Renomear um item controlado por origem


Quando voc renomeia um item controlado por origem, o Visual Studio renomeia a
cpia local automaticamente se o plug-in de controle de origem suporta propagao
da alterao de namespace. Caso contrrio, ele consultar voc para obter
instrues de renomeao. Para mais informaes sobre propagao de alteraes
de namespaces, consulte Introduo ao controle de origem.
Para renomear um item de origem controlada
10. No Visual Studio, abra o Solution Explorer.
11. Clique com o boto direito do mouse no arquivo a ser renomeado, clique
Rename.
12. Digite um novo nome e pressione Enter.
13. Voc ser solicitado para fazer check-out do item. Efetue o check-out
conforme o suporte de seu plug-in de controle de origem.
14. Na caixa de dilogo Source Control, clique em Rename or move the
item(s) locally and in the source control store.
15. No Solution Explorer, efetue o check-in do item conforme o suporte de seu
plug-in de controle de origem.

Visual Studio

245

16. Notifique qualquer pessoa que possa ter efetuado check-out do item que
voc renomeou.
17. Se houver suporte para propagao da alterao de namespace, faa com
que os outros usurios efetuem um get para atualizar suas cpias locais. Eles
recebero uma mensagem notificando-os sobre a operao de renomeao.
18. Se no houver suporte para a propagao da alterao do namespace,
necessrio informar aos outros usurios para que renomeiem suas cpias
locais manualmente para refletir a alterao do nome.

COMO: definir opes de plug-in


Dependendo da como voc gerenciar seus itens em controle de origem, voc pode
desejar alterar algumas das opes padro de controle de origem antes de usar o
banco de dados. Essas opes esto disponveis atravs da Configurao Options
no menu Tools do Visual Studio.
Observao
Consulte a documentao do plug-in de controle de origem em uso para uma lista completa das opes no
nvel do banco de dados e das mais avanadas, alm de instrues sobre como configur-las.
Para definir opes de plug-in
10. No Visual Studio, no menu Tools, clique em Options e, em seguida, em
Source Control.
11. Na caixa de dilogo Options, clique em Plug-in Selection, assegure-se que
seu plug-in o indicado, e clique em OK.
12. Selecione Environment na caixa de dilogo Options.
13. Na caixa Source Control Environment Settings, selecione a funo para a
qual voc deseja definir as opes de controle de origem. O Visual Studio
seleciona automaticamente as opes de controle de origem padro para a
funo que voc tiver selecionado. Se voc desmarcar qualquer uma das
opes padro, a caixa Source Control Environment Settings exibe a
Opo Custom para indicar que voc personalizou o perfil originalmente
selecionado.
14. Personalize o perfil, marcando ou desmarcando as caixas de seleo do
controle de origem.
15. Clique em OK.
16. Agora clique em Plug-in Settings na caixa de dilogo Options.
17. Nessa aba, voc pode definir configuraes para cada funo do plug-in.
Clicando no boto Advanced tem-se acesso s configuraes avanadas para
a funo que voc est configurando.
18. Quando concluir todas as configuraes do plug-in, clique em OK para sair
da caixa de dilogo Options.

Visual Studio

246

Como: Trocar plug-ins de controle de origem:


Se voc tiver instalado mais de um plug-in para controle de origem para o Visual
Studio, voc pode troc-los a qualquer momento. Lembre-se que projetos
controlados por um plug-in de controle de origem no podem ser adicionados a
uma soluo gerenciada por um plug-in diferente. Uma vez que voc acrescenta
uma soluo ou projeto ao controle de origem que usa um plug-in, voc no pode
acrescentar o mesmo item ao controle de origem que usa outro plug-in, a menos
que voc remova, primeiro, o item do controle de origem.
Para mudar o plug-in padro de controle de origem
4.
5.
6.

No Visual Studio, no menu Tools, clique em Options.


Na caixa de dilogo Options clique em Source Control, depois em Plug-in
Selection.
Selecione um plug-in e clique OK.

COMO: exibir uma lista de arquivos com check-out


Voc pode usar a janela Pending Checkins para exibir uma lista dos arquivos com
check-out na soluo atual. O controle de origem do Visual Studio permite que voc
faa um check-in de arquivos desta janela com um nico clique de boto.
Para exibir uma lista de arquivos modificados
4.

No Visual Studio, no menu View, clique em Pending Checkins.

5.

Encaixe a janela conforme desejado.

6.

Se voc desejar fazer check-in de arquivos desta janela, selecione-os e


clique no boto Check In.

Referncia a Interface do Usurio do controle de origem


Esta seo descreve as caixas de dilogo usadas pelo controle de origem no Visual
Studio. As caixas de dilogo a seguir so modelos que o desenvolvedor de plug-in
pode adaptar conforme necessrio. Voc pode ou no ver essas caixas de dilogo
no Visual Studio, dependendo do plug-in que est sendo usado para controle de
origem:

Verifique em

Verificar sada para editar

Obter

Desfazer Checkout

Caixa de dilogo Change Source Control


Cria e gerencia as conexes e ligaes que vinculam uma soluo ou projeto
localmente salvos a uma pasta no banco de dados.

Visual Studio

247

Observao
No possvel usar o Visual Studio para vincular, desvincular, conectar ou desconectar um aplicativo da
Web criado utilizando as FrontPage Server Extensions.
Acesso caixa de dilogo
No Visual Studio, selecione um item no Solution Explorer. No menu File, clique em
Source Control e depois em Change Source Control.
Observao
Esta caixa de dilogo tambm est disponvel clicando com o boto direito do mouse sobre o item no
Solution Explorer.
Vincular
Associa os itens selecionados a uma localidade do servidor de controle de
origem especificado. Por exemplo, voc pode usar este boto para criar um
vinculo pasta mais recentemente utilizada do servidor de controle de
origem e banco de dados. Se uma pasta recente do servidor ou do banco de
dados no puder ser encontrada, voc ser solicitado a especificar outra.
Procurar
Permite que voc procure uma nova localidade para o item especificado no
servidor de controle de origem.
Colunas
Identifica colunas para exibio e a ordem na qual elas so exibidas.
Conectar
Cria uma conexo entre itens selecionados e o servidor de controle de
origem.
Conectado
Exibe o status da conexo de uma soluo ou projeto selecionado.
Desconectar
Desconecta a cpia local de uma soluo ou projeto no seu computador da
cpia mestre no banco de dados. Utilize esse comando antes de desconectar
seu computador do servidor de controle de origem, por exemplo, ao
trabalhar off-line em seu laptop.
OK
Aceita alteraes feitas na caixa de dilogo.
Provedor
Exibe o nome do plug-in de controle de origem.
Atualizar
Atualiza as informaes de conexo para todos os projetos listados nesta
caixa dilogo.
Servidor Binding

Visual Studio

248

Indica a ligao de um item a um servidor de controle de origem.


Nome do servidor
Exibe o nome do servidor de controle de origem ao qual a soluo ou projeto
correspondente est acoplada.
Solution/Project
Exibe o nome de cada projeto e soluo na seleo atual.
Classificao
Altera a ordem de classificao de colunas exibidas.
Status
Identifica o status de vinculao e conexo de um item. As possveis opes
so:
Opo

Descrio

Vlido

Especifica que o item est corretamente vinculado e conectado a pasta do servidor ao


qual ele pertence.

Invlido

Especifica que o item est incorretamente vinculado ou desconectado da pasta qual ele
pertence. Use o comando Add to Source Control ao invs do comando Bind para este
item.

Desconhecido Especifica que status do item sob controle de origem ainda no foi determinado.
No
controlado

Especifica que o item no se encontra sob controle de origem.

Desagrupar
Exibe a caixa de dilogo Source Control que permite que voc remova os
itens selecionados do controle de origem e permanentemente disassocie-os
das suas pastas.
Observao
Se voc desvincular um projeto da Web, ser impossvel revincul-lo a seu servidor de controle de origem
original at que voc altere a localidade de sua cpia de trabalho.

Caixa de dilogo Check In (Controle de Cdigo Fonte)


Verifica um arquivo, soluo ou projeto alterado no banco de dados do controle de
cdigo fonte. Check-ins tambm podem ser feitos a partir da janela Pending
Checkins.
Acesso caixa de dilogo
No Visual Studio, selecione um item na janela Solution Explorer. No menu File,
clique em Source Control depois em Check In.

Visual Studio

249

Observao
Esta caixa de dilogo tambm disponibilizada clicando-se com o boto direito no item na janela
Solution Explorer.
Check In
Realiza o check-in de todos os itens selecionados.
Columns
Identifica as colunas a serem exibidas e a ordem na qual elas so exibidas.
Comments
Especifica um comentrio a ser associado com a operao de check-in.
Don't show Check in dialog box when checking in items
Impede que a caixa de dilogo seja exibidas durante operaes de check-in.
Flat View
Exibe os arquivos onde est sendo feito o check-in como listas simples sob
sua conexo com controle de cdigo fonte.
Name
Exibe os nomes dos itens onde deve-se fazer o check-in. Os itens aparecem
com as caixas de seleo ao lado selecionadas. Se voc no desejar fazer
check-in de um item especfico, desmarque sua caixa de seleo.
Options
Exibe opes de check-in especficas de plug-ins de controle de cdigo fonte
quando a seta direita do boto selecionada.
Sort
Altera a ordem de classificao das colunas de exibio.
Tree View
Exibe a pasta e a hierarquia dos itens nos quais voc estiver realizando o
check-in.

Check-out para a caixa de dilogo Edit (controle de origem)


Faz check-out de solues, projetos ou itens individuais do controle de origem.
Fazer check-out de um item pode copiar a cpia mestre atual para o seu
computador local e remover o seu atributo de somente leitura. Opcionalmente voc
pode configurar o comando Check Out For Edit para fazer check-out somente da
verso local. A menos que o pacote de controle de origem esteja configurado para
dar suporte a checkouts compartilhados, fazer check-out de um item tambm
bloqueia o item de maneira que ele estar em somente leitura para outros
usurios.
Caixa de dilogo Access
No Visual Studio, selecione um item no Solution Explorer. No menu File, clique em
Source Control, depois clique em Check Out For Edit.

Visual Studio

250

Observao
Esta caixa de dilogo tambm est disponvel clicando com o boto direito do mouse no item no Solution
Explorer.
Verificar sada
Faz check-out de todos os itens selecionados.
Colunas
Identifica as colunas para exibio e a ordem na qual elas so exibidas.
Comentrios
Especifica um comentrio para associar operao de check-out.
No caixa dilogo Show Check Out quando check-out itens
Impede que a caixa de dilogo seja exibida durante operaes de check-out.
Exibir simples
Exibe os itens do check-out em progresso como listas simples sob sua
conexo de controle de origem.
Editar
Permite que voc modifique um item sem fazer seu check-out. O boto Edit
aparece somente se voc tiver o Visual Studio configurado para dar suporte
edio de arquivos com check-in.
Nome
Exibe os nomes dos itens disponveis para check-out. Os itens que esto
selecionados aparecem com caixas de seleo ao seu lado. Se voc no
desejar fazer check-out de um item especfico, desmarque sua caixa de
seleo.
Opes
Exibe opes de check-out especficas do plug-in de controle de origem
quando a seta direita do boto clicada.
Classificao
Altera a ordem de classificao das colunas exibidas.
Exibir rvore
Exibe a hierarquia de pastas e arquivos para o item do check-out em
progresso.

Caixa de dilogo Get (controle de origem)


Recupera uma cpia somente para leitura do item selecionado do banco de dados
para sua pasta de trabalho, ou outra pasta que voc especificar.
Acesso caixa de dilogo
No Visual Studio, selecione um item no Solution Explorer. No menu File, clique em
Source Control, depois em Get.

Visual Studio

251

Observao
Esta caixa de dilogo tambm est disponvel clicando-se com o boto direito do mouse sobre o item no
Solution Explorer.
Ao
Especifica a ao a ser executada nos itens a ser recuperados.
Colunas
Identifica colunas para exibio e a ordem na qual elas so exibidas.
Exibir simples
Exibe os arquivos sendo recuperados como listas simples sob suas conexes
ao controle de origem.
Hora modificado
Exibe o momento em que um item foi modificado pela ltima vez.
Nome
Exibe os nomes dos itens a ser recuperados. Os itens aparecem com as
caixas de seleo ao lado dos mesmos selecionadas. Se voc no desejar
recuperar um item especfico, desmarque a caixa de seleo correspondente.
Opes
Exibe opes de recuperao especficas do plug-in do Source Safe quando a
seta direita do boto clicada.
Classificao
Altera a ordem de classificao das colunas exibidas.
Exibir rvore
Exibe a hierarquia de pastas e arquivos para os itens sendo recuperados.

Janela de check-ins pendentes


Exibe todos os arquivos com check-out na soluo ou projeto atual. Voc pode usar
esta janela para fazer check-in de todos os arquivos com um nico clique de boto.
Caixa de dilogo de acesso
No Visual Studio, no menu View, clique em Pending Checkins.
Change type
Identifica o tipo de alterao que foi feita para o item selecionado.
Check In
Efetua check-in dos itens selecionados.
Columns
Identifica as colunas para exibio e a ordem na qual elas sero exibidas.
Comments
Especifica um comentrio a ser associado com a operao de check-in.

Visual Studio

252

Flat View
Exibe os arquivos que voc est efetuando check-in na forma de listas
simples em sua conexo de controle de origem.
Name
Exibe os nomes dos itens com check-in a ser efetuado. Os itens aparecem
com as caixas de seleo ao seus lados selecionadas. Se voc no desejar
fazer o check-in de um item especfico, desmarque sua caixa de seleo.
Options
Exibe opes de check-in especficas de plug-ins quando a seta direita do
boto clicada.
Sort
Altera a ordem de classificao das colunas exibidas.
Tree View
Exibe a hierarquia das pasta e arquivos que voc estiver efetuando check-in.
Undo checkout
Reverte o check-out de um item selecionado, o qual perde qualquer alterao
feita desde o check out.

Guias de plug-in para controle de origem (caixa de dilogo Options)


Permitem a personalizao de funes de controle de origem e configuraes de
plug-in no Visual Studio. As guias de plug-in fazem parte da caixa de dilogo
Options do Visual Studio, localizada sob a entrada Source Control:

Plug-in Selection Alterna entre os plug-ins de controle de origem.

Environment Especifica as configuraes de ambiente para as funes


padres definidas pelo Visual Studio. Por exemplo, se o usurio for um
desenvolvedor independente, conflitos com outros usurios no so
geralmente criados ao manter itens com check-out aps um check-in. Para
esta funo, o Visual Studio seleciona automaticamente a opo Keep items
checked out when checking in.

Plug-in Settings Especifica opes para identificar o plug-in de controle de


origem associado a um projeto ou soluo.

Guia Access
No Visual Studio, no menu Tools, clique em Options, e depois em Source
Control. Opes so definidas para Plug-in Selection, Environment, e Plug-in
Settings.
Lista de elementos de interface do usurio, Selection Plug-in
Altera o plug-in atual de controle de origem associado ao IDE do Visual Studio, e
faz dele o plug-in padro. O plug-in selecionado refletido na entrada Source
Control no menu File do Visual Studio. Clique em OK para registrar sua alterao
e alternar a operao para o plug-in escolhido por voc.
Observao

Visual Studio

253

Voc pode usar esta parte da caixa de dilogo Options para desativar o controle de origem clicando em
None na lista de plug-ins
Lista de elementos de interface do usurio, Environment
Permitir que itens a serem editadas checked-in
Especifica que itens com check-in podem ser editados na memria. Se este
item estiver selecionado, um boto Edit aparecer na caixa de dilogo
Check Out For Edit quando voc tentar editar um item com check-in.
Check in tudo ao fechar uma soluo ou projeto
Especifica que voc ir fazer check-in de todos os itens ao fechar uma
soluo ou projeto.
Itens Checked-in
Contm configuraes para salvar e editar itens com check-in.
No Mostrar caixa de dilogo check-out quando check-out itens
Especifica que o Visual Studio deve exibir o comando Check Out Now no
menu File. Nesse caso, uma caixa de dilogo de check-out no exibida.
No Mostrar caixa de dilogo check-in ao verificar em itens
Especifica que o Visual Studio deve exibir o comando Check In Now no
menu File. Nesse caso, uma caixa de dilogo de check-in no ser exibida.
No mostrar esta caixa de dilogo novamente
Especifica que o Visual Studio no deve mostrar as configuraes de
ambiente de controle de origem.
Edio
Especifica a maneira com que itens devem ser manipulados na edio. As
opes possveis so:
Opo

Descrio

Prompt for checkout

Especifica que o Visual Studio deve emitir um prompt para um check-out.

Prompt for exclusive


checkouts

Especifica que o Visual Studio deve emitir um prompt para check-outs


exclusivos.

Check out automatically

Indica que o Visual Studio deve fazer check-out de itens automaticamente.

Do nothing

Especifica que o Visual Studio no deve fazer nada na edio.

Obter tudo quando uma soluo ou projeto for aberto


Recupera a verso mais recente de todos os itens quando voc abre uma
soluo ou projeto.
Manter itens check-out ao verificar na
Especifica que itens em processo de check-in devem permanecer com checkout para voc. Se voc desejar alterar esta opo para um check-in

Visual Studio

254

especfico, clique na seta de Options na caixa de dilogo Check In, e


desmarque a opo Keep Checked Out.
Redefinir
Redefine confirmaes.
Salvar
Especifica a maneira com que itens devem ser manipulados quando voc os
salva. As opes possveis so:
Opo

Descrio

Prompt for checkout

Especifica que o Visual Studio deve emitir um prompt para check-out em uma
operao de salvar.

Check out
automatically

Especifica que o Visual Studio deve fazer check-out automaticamente em uma


operao de salvar.

Save as

Especifica que o Visual Studio deve apresentar um prompt Save as em uma


operao de salvar.

Configuraes de ambiente controle de origem


Especifica o nome do plug-in de controle de origem para o qual voc est
definindo opes de ambiente.
Lista de elementos de interface do usurio, Plug-in Settings
Avanadas
Permite que voc defina opes adicionais para usar o plug-in de controle de
origem . O boto Advanced s est disponvel quando um plug-in de
controle de origem vlido est instalado no computador local. As
configuraes avanadas so especficas para o plug-in.
Identificao de logon
Especifica o nome de usurio para efetuar logon no plug-in de controle de
origem. Se seu plug-in der suporte, esse nome ser colocado
automaticamente na caixa de dilogo de logon usada pelo plug-in de controle
de origem para acessar o servidor. Para ativar essa opo, desative logons
de usurio automticos do seu plug-in de controle de origem, e reinicie o
Visual Studio.
Observao
A identificao de logon somente pode ser editada quando um plug-in vlido de controle de origem
estiver instalado na mquina local.
Executar atualizaes de status em segundo plano
Atualiza automaticamente os cones de controle de origem no Solution
Explorer medida que o status de item se altera. Se voc tiver atrasos ao
executar operaes intensivas no servidor, especialmente quando abrir uma

Visual Studio

255

soluo ou projeto do controle de origem, desmarcar esta opo pode


melhorar o desempenho.
Configuraes plug-in
Especifica o nome do plug-in de controle de origem para o qual voc est
fazendo configuraes.

Caixa de dilogo Source Control


Permite que voc remova itens do controle de cdigo fonte e desfaa
permanentemente a associao entre os itens e suas pastas. Esta caixa de dilogo
usada para propagar as operaes excluir, renomear e mover.
Acesso caixa de dilogo
No Visual Studio, clique em um item com o boto direito do mouse, em seguida,
clique em Delete ou Rename. O contedo da caixa de dilogo varia dependendo
do comando.
Lista de elementos da interface do usurio para renomeaes ou
movimentaes
Make my current choice the default action for all future renames or moves
Especifica que sua escolha ser a ao padro das operaes posteriores de
renomear ou mover. Voc pode redefinir o padro em
Only rename or move item(s) locally
Especifica que os itens devem ser renomeados localmente. Os itens
renomeados ou movidos no mais estaro sob controle de verso.
Rename or move the item(s) locally and in the source control store
Especifica que os itens devem ser renomeados localmente e no banco de
dados. A verso mais recente da soluo ou projeto no refletir a
renomeao ou a movimentao at o prximo check-in.
You are about to rename or move the following
Lista os itens que voc selecionou para serem renomeados ou movidos.
Lista de elementos da interface do usurio para excluses
Delete the item(s) locally and in the source control store
Especifica que os itens devem ser excludos localmente e no banco de dados.
A verso mais recente da soluo ou projeto no refletir a operao de
excluso at o prximo check-in.
Make my current choice the default action for all future deletes
Especifica que a sua escolha ser a ao padro das operaes posteriores
de excluso.
Only delete item(s) locally
Especifica que os itens devem ser excludos localmente. Outros membros da
equipe no so afetados por essa opo at o prximo check-in. Voc
precisar excluir manualmente os itens no banco de dados aps o check-in.
You are about to delete the following

Visual Studio

256

Lista os itens que voc selecionou para excluso.

Caixa de dilogo Undo Checkout (Controle de Cdigo Fonte)


Reverte a opo de check-out do item selecionado na janela Solution Explorer. Voc
perder qualquer alterao feita desde o ltimo check-out.
Acesso caixa de dilogo
No Visual Studio, selecione um item na janela Solution Explorer. No menu File,
clique em Source Control e em seguida clique em Undo Checkout.
Observao
Esta caixa de dilogo tambm disponibilizada clicando-se com o boto direito no item na janela
Solution Explorer.
Columns
Identifica as colunas a serem exibidas e a ordem na qual elas so exibidas.
Flat View
Exibe os itens como listas simples sob a sua conexo com o controle de
cdigo fonte.
Name
Exibe os nomes dos itens para os quais ser desfeito o check-out. Os itens
aparecem com as caixas de seleo ao seu lado selecionadas. Se voc no
deseja desfazer o check-out de um item, desmarque sua caixa de seleo.
Options
Exibe opes para desfazer o check-out especficas de plug-ins de controle
de cdigo fonte quando a seta direita do boto selecionada.
Sort
Altera a ordem de classificao das colunas de exibio.
Tree View
Exibe a pasta e a hierarquia dos itens nos quais voc est revertendo o
check-out.
Undo Checkout
Reverte o check-out.

Visual Studio

257

Visual Studio

258

Configuraes do Visual Studio


Configuraes no Visual Studio consistir de personalizaes feitas para o ambiente
de desenvolvimento integrado (IDE) com base em diferentes tipos de atividades de
desenvolvimento e seus prprios personalizaes. Essas personalizaes incluir
mostrar ou ocultar determinada layouts janela, colocao dos comandos de menu,
nomes de menu, modelos disponveis na caixa de dilogo Novo projetos, janelas de
ferramentas, predefinidas combinaes de teclas de atalho, e ajuda filtros, e assim
por diante.
Com configuraes, voc pode:

Criar uma cpia das suas configuraes ativa para uso em uma segunda
mquina
Compartilhar suas configuraes Ativa com outros desenvolvedores
Permitir todos os membros da equipe para usar as mesmas configuraes em
Selecione reas, como o editor, sem remover personalizaes para outras reas
individuais

Quais so configuraes?
Configuraes so personalizaes ao IDE, como layouts janela, padres editor, e
opes caixa dilogo disponveis que voc pode salvar, Exportar, importar, ou
redefinir para facilitar o IDE para usar.
As configuraes Ativa consistem em duas partes: predefinidas personalizaes do
arquivo instalado.vssettings voc selecionou na primeira vez voc iniciou Visual
Studio e qualquer personalizao IDE subseqentes que voc fez. Configuraes
ativa so salvas por padro no currentsettings.vssettings arquivo.
Para obter mais informaes sobre as configuraes predefinidas disponveis com
Visual Studio, consulte os seguintes tpicos.
Como configuraes funcionam?
Quando voc inicia Visual Studio, primeiro necessrio para selecionar uma
coleo configuraes que contm configuraes predefinidas projetadas para
corresponder seus hbitos de desenvolvimento. Se voc atualizar para outro edio
do Visual Studio, voc tambm ter a opo de aplicar configuraes a outros
edio na usando a My Previous Settings opo. A coleo configuraes o
primeiro elemento de suas configuraes ativa. Cada vez que fizer uma alterao
em uma configurao controlada pelo Visual Studio, como alterar a cor do
commented cdigo no Editor, a alterao automaticamente salvo para
currentsettings.vssettings juntamente com as configuraes predefinidas. O Visual
Studio aplica suas configuraes ativa automaticamente sempre que voc iniciar o
Visual Studio.
Em alguns casos, voc pode alterar as configuraes aplicadas como parte de uma
coleo predefinida Por exemplo, se uma coleo configuraes simplificada caixa
de dilogo Opes, ocultando pginas, voc pode exibir essas pginas
manualmente, selecionando Show all settings. Em outros casos, voc no pode
substituir a configurao predefinida sem aplicar uma coleo diferente. Para obter
uma lista detalhada das personalizaes includos no configuraes predefinidas,
consulte Configuraes do Visual Studio. Para obter informaes sobre como aplicar
colees configuraes diferentes, consulte Como: Alterar configuraes
selecionadas.

Visual Studio

259

Configuraes podem ser aplicadas de duas maneiras: completamente voc pode


substituir as configuraes Ativa com novas configuraes ou voc pode substituir
uma parte de suas configuraes ativa. Importar um arquivo que contm todas as
categorias configuraes possveis.vssettings ou aplicar outra coleo configuraes
dois substituiro as configuraes ativa completamente. Importar um arquivo que
contm somente um subconjunto das categorias configuraes ou unselecting
categorias configuraes em um arquivo.vssettings.vssettings s se aplica essas
configuraes que estiver selecionadas, deixando as configuraes ativos para as
categorias restantes intacto.
Ajuda e Configuraes
Colees configuraes predefinidas tambm fornecer personalizaes Ajuda.
Configuraes especificam o padro How Do I Pgina na Ajuda. Eu selecionado
como pendente eu pgina filtros fazer o contedo que aparece no ndice analtico e
no ndice,, bem como fornece contedo personalizado na caixa como guia. Voc
pode alterar o ativo How Do I pgina na lista drop-down como pendente eu outras
pginas.
Configuraes e segurana
Algumas categorias configuraes podem conter informaes sobre voc ou seu
computador que pode ser uma questo de segurana se voc compartilhar suas
configuraes com outros usurios. Inversamente, se voc pretende importar
configuraes fornecidas por outras pessoas, voc precisar estar ciente das
categorias dentro do arquivo configuraes que podem ser uma questo de
segurana. Um cone aparece ao lado essas categorias com as possveis questes
de segurana. Essas categorias configuraes incluem:

Favoritos

Importar e exportar configuraes

Como: Alterar configuraes selecionadas


Voc pode aplicar um sub-set das configuraes de uma coleo configuraes
diferentes para as configuraes atuais para criar um ambiente de desenvolvimento
mais personalizada. Para obter mais informaes sobre configuraes predefinidas,
consulte Configuraes do Visual Studio.
Para alterar configuraes selecione
7.

No menu Tools, escolha Import and Export Settings.

8.

Na Welcome to the Import and Export Settings Wizard Pgina, clique


em Import selected environment settings e clique em Next.

9.

Na pgina Save Current Settings, selecionar Yes, save my current


settings, e clique em Next

10. No Which collection of settings do you want to import, selecione uma


coleo configuraes na lista e clique em Next.
11. No Which settings do you want to import, expanda a lista e selecione
apenas a categorias ou itens de categoria que voc deseja que se aplicam as
configuraes atuais.
12. Clique em Finish.
A Reset Complete pgina lista os erros associados a redefinindo as
configuraes com Details.

Visual Studio

260

Trabalhando com configuraes


Esta seo contm informaes sobre a aplicao, exportar e importar
configuraes para personalizar o ambiente de desenvolvimento integrado (IDE)
para melhor correspondncia seu estilo de desenvolvimento. Voc tambm pode
encontrar informaes gerais sobre como configuraes funcionam e os tipos de
itens que so personalizadas atravs das configuraes. Alm disso, aprender a
especificar um conjunto de configuraes de uso da equipe.

COMO: Compartilhar configuraes entre computadores


Voc pode exportar configuraes para o editor, projetos, depurao, fontes e
cores, e outras reas IDE a um arquivo que voc pode importar e usar em outro
computador, como seu computador de desenvolvimento segundo ou computador
um colega na.
Exportar configuraes para um arquivo
Voc pode optar por exportar todas ou algumas das suas configuraes atuais a um
arquivo.vssettings que voc pode usar em um computador segundo ou compartilhar
com outros desenvolvedores.
Para exportar configuraes
8.
9.

No menu Tools, escolha Import and Export Settings.


Na Welcome to the Import and Export Settings Wizard Pgina, clique
em Export selected environment settings e clique em Next.

10. No Which settings do you want to export?, selecione as categorias voc


pretende exportar e, em seguida, clique em Next Configuraes.
Observao
Algumas categorias configuraes podem conter informaes sobre voc ou seu computador que pode ser
uma questo de segurana. Essas categorias configuraes so identificadas por um cone de aviso
amarelo e preto.
11. No What do you want to name your settings file, digite um nome para o
arquivo de configuraes.
12. Se voc gostaria de salvar o arquivo em um local diferente, clique Browse
ou digite um novo caminho para Store my settings file in this directory.
13. Clique em Finish.
14. Na pgina Export Complete, examine os erros associados exportao as
configuraes com Details.
Importar um arquivo.vssettings
Aps ter criado um arquivo.vssettings, voc pode usar esse arquivo em outros
computadores ao importar esse arquivo para outra instalao do Visual Studio.
Voc tambm pode importar arquivos de configurao criados por outros usurios e
aplicar essas configuraes para o Visual Studio.
Se voc est importando o arquivo configuraes contm todas as categorias
configuraes possveis, importar esse arquivo completamente substitui as
configuraes existentes. Importar o arquivo se um arquivo de configuraes

Visual Studio

261

contm apenas um subconjunto das categorias configuraes, apenas aplica essas


categorias e no afeta as configuraes atuais para categorias no importadas.
Um desenvolvedor na equipe por exemplo, tem exportadas todas as sua
configuraes para um arquivo para que outras pessoas na equipe podem utiliz-lo.
Se voc desejar se aplicar as configuraes de fontes e cores e as configuraes
teclado desse arquivo, somente voc pode limpar todos os outras categorias
configuraes e apenas aplicar as configuraes selecionadas sem alterar as
configuraes atuais para as categorias restantes
Para importar configuraes
9.

No menu Tools, escolha Import and Export Settings.

10. Na Welcome to the Import and Export Settings Wizard Pgina, clique
em Import selected environment settings e clique em Next.
11. Logon Save Current Settings, optar Yes, save my current settings por
criar um backup de suas personalizaes IDE atuais; optar No, just import
new settings, overwriting my current settings por continuar sem fazer o
backup suas personalizaes IDE atuais.
12. No What collection of settings do you want to import?, selecione um
arquivo na lista ou clique Browse para localizar um arquivo de configuraes
e clique em Next.
13. No Which settings do you want to import?, selecione as configuraes
opes voc pretende importar do arquivo.vssettings selecionado.
Observao
Algumas categorias configuraes podem conter informaes que podem ser uma questo de segurana.
Essas categorias configuraes so identificadas por um cone de aviso amarelo e preto.
14. Clique em Finish.
15. Na caixa Save Current Settings de dilogo, decidir se deve ou no para
salvar as configuraes atuais.
16. Na pgina Import Complete, examine os erros associados a importar as
configuraes em Details.
Compartilhar um arquivo nico.vssettings entre computadores
Em vez de criar uma cpia das suas configuraes atuais e usando a cpia em
outro computador, voc pode compartilhar um arquivo.vssettings nico em um
compartilhamento de rede. Essa tcnica pode ser til se voc desejar as
personalizaes mesmas exatas disponveis em todas as vezes em vrios
computadores.
Quando voc compartilhar um arquivo.vssettings nico em vrios computadores,
personalizaes feitas, independentemente do computador no qual voc torn-los
na, so salvas para o arquivo.vssettings. A lista Tarefas por exemplo, se voc
fechar a lista de tarefas em um computador, na prxima vez que voc iniciar o
Visual Studio em outros computadores, no ser exibida.
Para compartilhar um arquivo nico configuraes entre computadores
6.

No menu Tools, escolha Options

7.

Na pasta Environment, escolha Import and Export Settings.

Visual Studio

262

8.
9.

Na Automatically save my settings to this file, digite uma pasta


compartilhada ou clique Browse para localizar um compartilhamento de rede.
Clique em OK.

10. No segundo computador, repita as etapas 1 a 4.

Como: Especificar configuraes para uma equipe


Quando estiver trabalhando em um grupo, ele pode ser til para que cada
desenvolvedor usar as configuraes mesmas exatas em algumas reas do
ambiente de desenvolvimento integrado (IDE), como o editor. Voc pode incentivar
Essa consistncia criando um arquivo.vssettings para um subconjunto de categorias
configuraes disponveis que todos os desenvolvedores de seu grupo podem usar.
Quando aplicado, essas configuraes da equipe no seria substituem qualquer
categoria no especificada no arquivo.vssettings, permitindo que desenvolvedores
individuais para manter personalizaes feitas para outras reas do IDE. Para obter
informaes sobre como criar um arquivo.vssettings, consulte COMO: Compartilhar
configuraes entre computadores.
O Visual Studio verifica que voc estiver usando a verso mais recente do
arquivo.vssettings de grupo sempre que voc iniciar o Visual Studio. Quaisquer
alteraes feitas no arquivo.vssettings so aplicadas automaticamente.
Para especificar um arquivo.vssettings para uso em um grupo
6.

Partir do Tools menu, escolha Options.

7.

Na pasta Environment, escolha Import and Export Settings.

8.

Selecione Use team settings file.

9.

Insira um UNC ou caminho local, ou clique Browse para localizar o


arquivo.vssettings de grupo.

10. Clique OK para aplicar as configuraes.

Import and Export Settings Wizard


Use este assistente para exportar configuraes, importar configuraes, ou
substituir as configuraes para usar uma coleo configuraes predefinidas.
Opo

Descrio

Exportar configuraes de
ambiente selecionada

Salvar um subconjunto ou todas as suas configuraes existentes para


que voc pode usar essas configuraes em outro computador.

Importar configuraes de
ambiente selecionada

Aplica as configuraes em um arquivo voc tiver recebido. Substitui


existentes configuraes com os do arquivo importado.

Redefinir todas as
configuraes

Permite que voc se reverter as configuraes de volta para uma das


configuraes predefinidas disponveis com o produto.

Voc pode acessar este assistente a partir do Tools Menu, escolhendo Import and
Export Settings.

Visual Studio

263

Escolha Configuraes para exportar, importar e exportar


configuraes Assistente
Use esta pgina do Assistente para configuraes a importao e exportao para
especificar algumas ou todas as suas configuraes atuais ser exportados para um
arquivo para uso em outros computadores. Voc pode acessar este assistente a
partir do Tools menu clicando Import and Export Settings.

COMO: Compartilhar configuraes entre computadores

Which settings do you want to export?


Selecione para exportar todas as configuraes, ou especificar um sub-set
das configuraes por categoria ou item de categoria.
Observao
Configuraes que podem conter informaes de identificao sobre voc ou seu computador so
marcadas com um grfico de aviso. Essas configuraes no so selecionados por padro, mas so
automaticamente selecionados se voc escolher All Settings.

Nomeie O arquivo de configuraes, importar e exportar configuraes


Assistente
Use esta pgina do Assistente para configuraes a importao e exportao para
especificar o nome e local do arquivo que ir conter as configuraes exportadas.
Voc pode acessar este assistente a partir do Tools menu clicando Import and
Export Settings.
COMO: Compartilhar configuraes entre computadores
What do you want to name your settings file?
Digite um nome personalizado para as configuraes exportadas.
Store my settings file in this directory.
Especifica o diretrio padro no qual as configuraes exportadas sero
salvos. Clique Browse para especificar uma pasta personalizada.

Salvar configuraes atuais, importar e Assistente para exportao


configuraes
Use esta pgina do Assistente para configuraes a importao e exportao para
salvar as configuraes ativos antes de importar novas configuraes. Voc pode
acessar este assistente a partir do Tools menu clicando Import and Export
Settings.
COMO: Compartilhar configuraes entre computadores
Yes, save my current settings
Selecione esta opo para criar um backup das suas configuraes atuais.
Mais tarde voc pode optar por importar essas configuraes para retornar
ao estado IDE atual.

Visual Studio

264

Setting file name

Digite um nome personalizado para as configuraes atuais.

Store my settings file in


this directory

Especifica o diretrio padro no qual as configuraes atuais sero salvos.


Clique Browse para especificar uma pasta personalizada.

No, just import new settings, overwriting my current settings


Selecione esta opo se voc no quiser backup as configuraes atuais. Se
voc est importando o arquivo configuraes contm configuraes para
itens de categoria voc ter personalizado, as configuraes importadas
substituir as alteraes.

Escolha Configuraes para importar, importar e Assistente


configuraes exportao
Use esta pgina do Assistente para configuraes a importao e exportao para
especificar a coleo Configuraes voc pretende importar. Voc pode acessar este
assistente a partir do Tools menu clicando Import and Export Settings.

COMO: Compartilhar configuraes entre computadores

Which settings do you want to import?


Selecione uma coleo na lista, ou clique Browse para localizar uma coleo
diferente para importar.
Description
Exibe informaes sobre a coleo configuraes que so otimizadas para.
Somente disponvel para Default Settings.

Escolha um coleo de configuraes para importar, importar e


Assistente configuraes exportao
Use esta pgina do assistente Importar e exportar configuraes para especificar
uma coleo configuraes predefinidos ou uma coleo configuraes
personalizadas voc deseja importar para uso no IDE. Voc pode acessar este
assistente a partir do Tools menu clicando Import and Export Settings.

Como: Alterar configuraes selecionadas

Which collection of settings do you want to import?


Lista as colees configuraes disponveis. Clique Browse para navegar
para uma coleo configuraes que no aparece na lista.
Description
Exibe informaes sobre a coleo configuraes que so otimizadas para.
Para obter mais informaes sobre colees configuraes predefinidas,
consulte Configuraes do Visual Studio.

Visual Studio

265

<task> Complete, Import and Export Settings Wizard


Esta pgina do importao e assistente exportar para configuraes exibe
informaes sobre a tarefa configuraes concluda com xito ou no e todos os
erros que foram encontrados. Voc pode acessar este assistente a partir do Tools
menu clicando Import and Export Settings.
Details
Exibe informaes sobre qualquer sucesso ou falhas.

Visual Studio

266

Gerenciar solues, projetos e arquivos


Os tpicos a seguir descrevem tarefas comuns que voc pode executar ao trabalhar
com solues e projetos.

Nesta seo
Introduo a solues, projetos, e itens
Entender os conceitos de solues, projetos, e itens e as vantagens de usar o
Visual Studio para gerenciar seus projetos de desenvolvimento e arquivos.
Propriedades de projeto do Visual Studio
Discute o Designer de Projeto e como modificar as configuraes do projeto.
Solues multi-projeto
Trabalhar em mais de um projeto de cada vez em uma instncia do (IDE) o
ambiente integrado de desenvolvimento.
Projetos autnomos
Entender quais projetos so autnomos e quando voc pode trabalhar com
eles.
Projetos temporrios
Entender quais projetos so temporrios e quando voc pode trabalhar com
eles.
Soluo, Projeto e elementos de interface do usurio de arquivo
Referncia para elementos de interface do usurio que permitem que voc
configure suas solues, projetos e arquivos.

Introduo ao solues, projetos, e itens


O Visual Studio fornece dois recipientes para ajud-lo com eficincia gerenciar os
itens que so exigidos por seu esforo de desenvolvimento, como referncias,
conexes de dados, pastas e arquivos. Esses recipientes so chamados solues e
projetos. Alm disso, o Visual Studio fornece Solution Folders para organizar
projetos relacionados em grupos e executar aes nesses grupos de projetos.
O Solution Explorer uma interface para exibir e gerenciar esses recipientes e
seus itens associados, parte do o ambiente integrado de desenvolvimento (IDE).
Solues e projetos recipientes:

Solues e projetos contm itens que representam as referncias, conexes de


dados, pastas, e arquivos que voc precisa para criar seu aplicativo. Uma soluo
pode conter vrios projetos e um projeto normalmente contm vrios itens. Esses
recipientes permitem a voc tirar proveito do IDE das seguintes maneiras:

Gerenciar configuraes para a soluo como um todo ou para projetos


individuais.

Usar o Solution Explorer para manipular detalhes de gerenciamento de


arquivos enquanto voc se concentra nos itens que fazem parte do seu
esforo de desenvolvimento.

Adicionar itens que so teis para vrios projetos na soluo ou para a


soluo sem refernciar o item em cada projeto.

Visual Studio

267

Trabalhar em diversos arquivos que so independentes de solues ou


projetos.

Conexes de dados arquivos, referncias, itens:

Itens podem ser arquivos e outras partes do seu projeto tais como referncias,
conexes de dados, ou pastas. No Solution Explorer, itens podem ser organizados
das maneiras a seguir:

Como itens de projetos, que so itens que compem seu projeto, como
formulrios, arquivos fonte, e classes dentro de um projeto no Solution
Explorer. A organizao e exibio depende do modelo de projeto que voc
selecionar bem como das modificaes que voce efetuou.

Como itens de soluo para arquivos que so aplicveis a sua soluo como
um todo na pasta Solution Items do Solution Explorer.

Como arquivos variados para arquivos que no estejam associados a um


projeto ou a uma soluo e que podem ser exibidos em uma pasta
Miscellaneous Files.

Para informaes mais detalhadas ou para aprender a usar o Solution Explorer,


consulte os tpicos a seguir:
Para obter mais informaes

Consulte

Solues e projetos

Solues como Containers


Projetos como Containers

Executar tarefas comuns de gerenciamento de arquivos

Gerenciar solues, projetos, e


Arquivos

Solues e estruturas de diretrio

HOW TO: criar pastas para


solues

Solution Explorer no ambiente de desenvolvimento integrados (IDE)

Explorer soluo

Gerenciando mltiplos projetos em uma soluo

Solues multi-Project

Itens que so referenciadas por vrios projetos e includos em


compilaes da soluo

Itens soluo

Elementos da interface de usurio relacionados a uma soluo no IDE Solues, interface de usurio
elementos
Projetos e solues criados externamente

Arquivos variados

Desenvolvendo e gerenciando scripts Windows Scripting

Windows Script Host

Visual Studio

268

Propriedades de Projeto (Visual Studio)


O projeto o ponto de partida para a criao de aplicativos, componentes e
servios em Visual Studio 2005. Ele atua como um recipiente que gerencia o seu
cdigo fonte, as conexes de dados e as referncias. Um projeto organizado como
parte de uma soluo que pode conter vrios projetos que sejam interdependentes
entre si. Os tpicos nesta seo descrevem as diversas tarefas envolvidas na
criao e no gerenciamento de projetos Visual Basic, Visual C# e Visual J#.

Gerenciando propriedades de projeto com o designer de projeto


O Project Designer uma interface de usurio conveniente no Visual Studio que
permite a voc definir propriedades de projeto, algumas das quais voc tambm
pode definir atravs da Janela Properties.

Gerenciando propriedades de aplicativo


As propriedades de aplicativo gerais descrevendo o aplicativo e seu
comportamento, tais como tipo de aplicativo, objeto de inicializao, e informaes
de assembly, so definidas no painel Application do Project Designer. As
seguintes tarefas podem ser realizadas no painel Application.

COMO: especificar informaes de assembly


Propriedades ou atributos de informaes de assembly so usadas para fornecer
informaes sobre um assembly ou aplicativo, incluindo uma descrio,
informaes de verso, nome da empresa, nome do produto e mais. Essas
informaes correspondem aos valores dos atributos assembly globais. Para obter
mais informaes sobre atributos assembly, consulte Atributos globais no Visual
Basic.
Voc especifica informaes assembly na Caixa de dilogo Assembly Information,
acessvel a partir da pgina Application do Project Designer.
Para inserir ou editar informaes Assembly

1.
2.
3.

Selecione um projeto no Solution Explorer, em seguida, no menu Project ,


clique em Properties.
Clique na guia Application.
Clique no boto Assembly Information para abrir a caixa de dilogo
Assembly Information.

Como alterar um nome de conjunto:


A Assembly Name propriedade de um aplicativo determina o nome que ser
usado para o aplicativo compilado. Por exemplo, definir a Assembly Name. Para "
MyApplication " para um Windows aplicativo resultaria em um arquivo executvel
chamado MyApplication.exe Os Assembly Name padres para o projeto nome; ele
pode ser alterado na pgina Application da a Project Designer.
Observao

Visual Studio

269

Embora o padro Valor de a Assembly Name. o mesmo a Assembly Name e alterando o Assembly
Name faz no alterar o nome do projeto como o nome do projeto, os dois so no relacionados; alterar o
nome do projeto no altera
Para alterar a propriedade Assembly Name

1.

Com um projeto selecionado no Solution Explorer, no menu Project ,


clique em Properties.

2.

Clique na Application Guia.

3.

No campo Assembly Name, digite o nome para o seu aplicativo.

COMO: alterar o namespace para um aplicativo


A propriedade Root Namespace define o namespace raiz para todos os arquivos
no projeto. Por exemplo, se voc definir o namespace raiz para Projeto1, e voc
tiver uma classe Classe1 fora de qualquer namespace em seu cdigo, o seu
namespace seria Projeto1.Classe1. Se voc tiver uma Classe2 em um namespace
Order no cdigo, seu namespace seria Projeto1.Order.Classe2.
Tambm possvel limpar a propriedade Root Namespace, a qual permite que
voc especifique manualmente a estrutura do namespace do seu projeto. Para mais
informaes, consulte Declarao de namespace.
Para alterar o namespace de um projeto

1.

Com um projeto selecionado no Solution Explorer, no menu Project ,


clique em Properties.

2.

Clique na guia Application.

3.

No campo Root namespace, insira o nome.

COMO: alterar o tipo de aplicativo


A propriedade Application Type para um projeto determina o tipo de aplicativo a
ser criado: Windows Application, Windows Class Library, Windows Service,
Command Line Application ou Server Class Library. Diferentes propriedades e
opes de projetos esto disponveis dependendo do tipo de aplicativo.
O padro Application Type o mesmo que o Project Type escolhido na caixa de
dilogo Add Project.
A propriedade Application Type pode ser definida na pgina Application do
Project Designer.
Para alterar o tipo de aplicativo

1.

Com um projeto selecionado no Solution Explorer, clique em Properties


no menu Project .

2.

Clique na guia Application.

3.

Escolha o tipo desejado na lista suspensa Application Type.

Visual Studio

270

COMO: Alterar o objeto de inicializao para um aplicativo


A propriedade Startup object (Objeto de inicializao) ou Startup form
(Formulrio de inicializao) de um projeto define o ponto de entrada a ser
chamado quando o aplicativo carregado; geralmente voc define-o para o
formulrio principal em seu aplicativo ou para o procedimento Sub Main que deve
executado quando o aplicativo iniciado.
Esta opo pode ser Startup object ou Startup form dependendo do tipo de
projeto.
Por exemplo, um aplicativo de console tem uma opo Startup Object que pode
ser Sub Main ou Module1. Um aplicativo do Windows tem uma opo Startup
Form, que s pode ser Form1. Como bibliotecas de classes no tm um ponto de
entrada, sua nica opo para essa propriedade (Vazio).
A opo Enable application framework (Habilitar framework de aplicativo)
especifica se um projeto de aplicativo do Windows ser iniciado com um
procedimento personalizado Sub Main (que voc tenha criado). Se voc ativar a
estrutura de aplicativos, seu aplicativo usa o Sub Main padro. Se voc desativar a
estrutura de aplicativos, o seu aplicativo utiliza o Sub Main personalizado (e voc
deve adicionar cdigo no procedimento Sub Main para o formulrio).
Observao
Ao usar um procedimento Sub Main personalizado como o objeto Startup (Inicializao), o cdigo nos
eventos do aplicativo (Startup, Shutdown, StartupNextInstance e UnhandledException) no
executado.
Voc pode definir a propriedade Startup object ou Startup form na pgina
Application (Aplicativo) do Project Designer (Designer de Projeto).
Para alterar o formulrio ou objeto de inicializao

1.
2.
3.

Com um projeto selecionado no Solution Explorer (Explorer de Soluo),


no menu Project (Projeto), clique em Properties (Propriedades).
Clique na guia Application.
Selecione um objeto de Startup da lista suspensa Startup object ou
Startup form.

Para definir o objeto de inicializao para um aplicativo do Windows como Sub Main

1.

Com um projeto selecionado no Solution Explorer, no menu Project, clique


em Properties.

2.

Clique na guia Application.

3.

Desmarque a caixa de seleo Enable application framework.

4.

Selecione Sub Main na lista suspensa Startup object.

Visual Studio

271

COMO: especifica um cone de aplicativo


A Icon propriedade para um projeto Especifica o arquivo cone (.ico) para o
aplicativo compilado que ser exibido no Windows Explorer e na barra de tarefas do
Windows.
A Icon propriedade pode ser acessado no painel Application da o Project
Designer;. Ela contm uma lista dos cones que foram adicionados a um projeto
como recursos ou como arquivos de contedo
Para especificar um cone do aplicativo

1.

Com um projeto selecionado no Solution Explorer, no menu o Project


clique Properties.

2.

Selecione o Application painel.

3.

Selecione um arquivo de cone (.ico) na lista suspensa o Icon.

Para especificar um cone do aplicativo e adicion-la ao seu projeto

1.
2.
3.

Com um projeto selecionado no Solution Explorer, no menu Project ,


clique em Properties.
Selecione o Application painel.
Selecione <Browse...> na lista Icon suspensa e navegar para a localidade
do arquivo de cones que voc deseja.
O arquivo cone adicionado ao seu projeto como um arquivo de contedo.

COMO: Ativar estilos visuais


Observao
Este tpico se aplica somente para os projetos do Visual Basic.
O Windows XP introduziu um novo aspecto de aparncia (look em feel) para a
interface de usurio do Windows, com controles que tm cantos arredondados e
que alteraram a cor quando voc para o mouse sobre eles. Por padro, aplicativos
baseados no Windows criados com Visual Basic automaticamente suportam estilos
visuais, tambm conhecidos como Temas do Windows XP. Quando executado em
uma plataforma que no d suporte para Temas do Windows XP, o aplicativo volta
para o aspecto de aparncia (look and feel) tradicional do Windows.
Se voc no deseja que o aplicativo oferea suporte a estilos visuais, voc pode
alterar a propriedade na pgina Application do Project Designer.
Observao
Suporte a estilos visuais do XP pode tambm ser ativado ou desativado atravs de programao atravs
do mtodo EnableVisualStyles da classe Application. Para mais informaes, consulte o tpico COMO:
Ativar estilos visuais do Windows XP.

Visual Studio

272

Para desativar os estilos visuais do Windows XP

1.

Com um projeto selecionado no Solution Explorer, no menu Project, clique


em Properties.

2.

Clique na guia Application.

3.

Desmarque a caixa de seleo Enable XP visual styles.

Para ativar os estilos visuais do Windows XP

1.

Com um projeto selecionado no Solution Explorer, no menu Project, clique


em Properties.

2.

Clique na guia Application.

3.

Marque a caixa de seleo Enable XP visual styles.


Observao
Estilos visuais so ativados por padro.

COMO: Especificar comportamento de instncias para um aplicativo


Observao
Este tpico se aplica somente aos projetos do Visual Basic.
Os aplicativos criados com Visual Basic so, por padro, aplicativos de mltiplas
instncias; os usurios podem iniciar vrias instncias do aplicativo compilado. Em
alguns casos, voc pode impedir os usurios de iniciar vrias instncias do seu
aplicativo. Isso pode ser feito marcando a propriedade Make Single Instance
Application para o seu projeto, acessvel da pgina Application do Project
Designer.
Quando a caixa de seleo Make Single Instance Application est marcada,
somente uma nica instncia do aplicativo compilado permitida. Se um usurio
tentar iniciar uma segunda instncia, o foco deslocado para a instncia que j
est sendo executada e o evento StartupNextInstance destacado.
Para criar um aplicativo de instncia nica

1.

Com um projeto selecionado no Solution Explorer, no menu Project ,


clique em Properties.

2.

Clique na guia Application.

3.

Marque a caixa de seleo Make single instance application.

Para criar um aplicativo de mltiplas instncias

1.

Com um projeto selecionado no Solution Explorer, no menu Project ,


clique em Properties.

2.

Clique na guia Application.

3.

Desmarque a caixa de seleo Make single instance application.

Visual Studio

273

Observao
Por padro, os aplicativos so de mltiplas instncias.

COMO: ativar autenticao de usurio personalizada


Observao
Este tpico se aplica somente para os projetos do Visual Basic.
Aplicativos baseados no Visual Basic usam autenticao do Windows para identificar
o usurio conectado no momento. Essas informaes podem ser recuperadas em
tempo de execuo usando o objeto My.User. Para informaes sobre
programao com o objeto My.User, consulte Acessando dados do usurio. Em tais
casos, defina a Authentication mode. para autenticao Windows.
Em algumas situaes, convm escrever seu prprio cdigo para autenticar
usurios, ao invs de usar os mtodos de autenticao padro do Windows. Em tais
casos, defina a Authentication mode para autenticao Application-defined.
Para ativar a autenticao personalizada (Application-DEFINED)

1.
2.
3.

Com um projeto selecionado no Solution Explorer, no menu Project ,


clique em Properties.
Clique na guia Application.
Na lista suspensa Authentication mode, selecione a autenticao
Application-defined.
Voc precisar fornecer seu prprio cdigo de autenticao.

Para usar autenticao do Windows

1.

Com um projeto selecionado no Solution Explorer, no menu Project ,


clique em Properties.

2.

Clique na guia Application.

3.

Na lista suspensa Authentication mode, selecione autenticao Windows.


Isso a configurao padro.

COMO: Especificar o comportamento de desligamento para um


aplicativo
Observao
Este tpico se aplica somente para os projetos do Visual Basic.
A propriedade Shutdown mode (modo de desligamento) para um projeto de
Windows Application (aplicativo do Windows) determina o comportamento de

Visual Studio

274

desligamento para o aplicativo. Quando definida como When startup form closes
(Quando o formulrio de inicializao fechar, o padro), o aplicativo termina
quando o formulrio definido como o Startup object (objeto de inicializao)
fechar, mesmo que outros formulrios estejam abertos. Quando definida como
When last form closes (Quando o ltimo formulrio fechar), o aplicativo termina
quando o ltimo formulrio for fechado ou quando a declarao
My.Application.Exit ou End for chamada explicitamente.
A propriedade Shutdown mode pode ser definida na pgina Application
(Aplicativo) do Project Designer (Designer de projeto).
Para alterar o comportamento de desligamento

1.
2.
3.

Com um projeto selecionado no Solution Explorer (Explorer de Soluo),


no menu Project (Projeto), clique em Properties (Propriedades).
Clique na guia Application.
Na lista suspensa Shutdown mode, escolha When startup form closes ou
When last form closes.

Gerenciando referncias
A pgina References do Project Designer usada para exibir, adicionar e
remover referncias e namespaces importados para seu projeto. As seguintes
tarefas podem ser realizadas na pgina References.

Referenciando Namespaces e Componentes


Referncias de projeto so usadas para acessar as propriedades, os mtodos e os
eventos de um objeto definido e aplic-los em seu programa. Os tpicos a seguir
contm uma viso geral das referncias no Visual Basic e Visual C# e fornecem
instrues sobre como adicionar, remover e gerenciar as referncias existentes.

Referncias de projeto
Para escrever cdigo contra um componente externo, seu projeto deve
primeiramente conter uma referncia a ele. Uma referncia pode ser feita aos
seguintes tipos de componentes:

Bibliotecas de classes do .NET Framework ou assemblies

Componentes COM

Outras bibliotecas de classes de projetos na mesma soluo

XML Web Services

Para obter mais informaes sobre referncias de XML Web Services, consulte
Referncias da Web.
Observao do Visual Basic
Referncias de projeto so gerenciadas de modo diferente no Visual Studio do que como eram no Visual
Basic 6.0. Para mais informaes, consulte Gerenciamento de projeto para usurios do Visual Basic 6.0.

Visual Studio

275

Referncias a componentes compartilhados

Em tempo de execuo, componentes devem estar em um dos dois locais: no


caminho de sada do projeto ou no cache global de assemblies (GAC). Se o projeto
contiver uma referncia a um objeto que no esteja em um desses locais, a
referncia deve ser copiada para o caminho de sada do projeto quando o projeto
criado. A propriedade CopyLocal indica se esta cpia precisa ser feita. Se o valor for
true, a referncia copiada. Se false, a referncia no copiada.
Se voc implantar um aplicativo que contm uma referncia a um componente
personalizado que est registrado no GAC, o componente no ser implantado com
o aplicativo, independentemente da configurao CopyLocal. Em verses
anteriores do Visual Studio, voc poderia definir a propriedade CopyLocal em uma
referncia para garantir que o assembly fosse implantado. Agora, voc deve
adicionar manualmente o assembly pasta \Bin. Isso coloca todo cdigo
personalizado sob exame detalhado, reduzindo o risco de publicar cdigo
personalizado com o qual voc no est familiarizado.
Por padro, a propriedade CopyLocal est definida como false se o assembly ou
componente est no cache global de assemblies ou um componente de estrutura.
Caso contrrio, o valor definido como true. Referncias de projeto-a-projeto so
sempre definidas como true.
Referncias de projeto-a-projeto

Em uma soluo com vrios projetos, voc pode criar referncias a objetos criados
em outro projeto que reside na mesma soluo. Isso cria uma interdependncia
que requer uma considerao especial ao criar e executar o aplicativo. Para mais
informaes, consulte Como: preparar e gerenciar Builds.

Solucionando problemas de referncias quebradas


Se seu aplicativo tentar usar uma referncia quebrada, um erro de exceo
gerado. A incapacidade de localizar o componente referenciado o disparador
primrio do erro, mas existem vrias situaes em que uma referncia pode ser
considerada quebrada. Essas instncias so mostradas na lista a seguir:

O caminho de referncia do projeto est incorreto ou incompleto.

O arquivo sendo referenciado foi excludo.

O arquivo sendo referenciado foi renomeado.

A conexo de rede ou a autenticao falhou.

A referncia a um componente COM que no est instalado no computador.

A seguir esto solues para esses problemas.


Observao
Arquivos em assemblies so referenciados com caminhos absolutos no arquivo de projeto. Devido a isso,
possvel que usurios trabalhando em um ambiente com vrios desenvolvedores sintam a falta de um
assembly referenciado no seu ambiente local. Para evitar esses erros, melhor nesses casos adicionar
referncias de projeto-a-projeto. Para obter mais informaes, consulte Como: adicionar ou remover
referncias no Visual Studio e Programando com assemblies.
Caminho de referncia est incorreto

Visual Studio

276

Se projetos so compartilhados em computadores diferentes, algumas referncias


podem no ser encontradas quando um componente est localizado em um
diretrio diferente em cada computador. Referncias so armazenadas sob o nome
do arquivo de componente (por exemplo, MeuComponente). Quando uma
referncia adicionada a um projeto, o local da pasta do arquivo de componente
(por exemplo, C:\MeusComponentes\) ser acrescentado propriedade de projeto
ReferencePath.
Quando o projeto aberto, ele tenta localizar esses arquivos de componentes
referenciados procurando nos diretrios no caminho de referncia. Se o projeto for
aberto em um computador que armazena o componente em um diretrio diferente,
como D:\MeusComponentes\, a referncia no poder ser encontrada e um erro
aparecer na Lista de Tarefas.
Para corrigir este problema, voc pode excluir a referncia quebrada e substitu-la
usando a caixa de dilogo Add Reference. Uma outra soluo usar o item
Reference Path em pginas de propriedades do projeto e modificar as pastas na
lista para apontar para os locais correto. A propriedade ReferencePath mantida
para cada usurio em cada computador, assim modificar o seu caminho de
referncia no afeta outros usurios do projeto.
Dica
Referncias de projeto-a-projeto no tm esses problemas. Por esse motivo, use-as em vez de referncias
de arquivo, se possvel.
Para consertar uma referncia de projeto quebrada corrigindo o caminho de referncia
1.
2.
3.

No Solution Explorer, clique com o boto direito do mouse no n do seu


projeto e clique em Properties.
O Project Designer aparecer.
Se voc estiver usando o Visual Basic, selecione a pgina References e
clique no boto Reference Paths. Na caixa de dilogo Reference Paths,
digite o caminho da pasta que contm o item que voc deseja referenciar no
campo Folder, depois clique no boto Add Folder.
Se voc estiver usando o Visual C#, selecione a pgina Reference Paths. No
campo Folder, digite o caminho da pasta que contm o item que voc deseja
refernciar, e depois clique no boto Add Folder.

Arquivo referenciado foi excludo


possvel que o arquivo sendo referenciado tenha sido excludo e no exista mais
na unidade.
Para corrigir uma referncia de projeto quebrada a um arquivo que no existe mais no
seu disco

Excluir a referncia.

Se a referncia existir em outro local no seu computador, leia-a deste local.

Para mais informaes, consulte Como: adicionar ou remover referncias no


Visual Studio.
Arquivo referenciado foi renomeado

possvel que o arquivo referenciado tenha sido renomeado.

Visual Studio

277

Para corrigir uma referncia quebrada a um arquivo que foi renomeado

Exclua a referncia, e depois adicione uma referncia ao arquivo renomeado.


Se a referncia existir em outra local no seu computador, voc precisa l-lo
daquele local. Para mais informaes, consulte Como: adicionar ou remover
referncias no Visual Studio.
Conexo de rede ou autenticao falhou

Pode haver vrias causas possveis para arquivos inacessveis: uma conexo de
rede ou uma autenticao que falhou, por exemplo. Cada causa pode ter meios
exclusivos de recuperao; por exemplo, voc pode precisar entrar em contato com
o seu administrador local para obter acesso aos recursos necessrios. No entanto,
excluir a referncia e corrigir o cdigo que a usa sempre uma opo. Para mais
informaes, consulte Como: adicionar ou remover referncias no Visual Studio.
Componente COM no est instalado no computador
Se um usurio tiver adicionado uma referncia a um componente COM e um
segundo usurio tentar executar o cdigo em um computador que no tenha este
componente instalado, o segundo usurio receber um erro de que a referncia
est quebrada. Instalar o componente no segundo computador ir corrigir o erro.
Para obter mais informaes sobre como usar referncias a componentes COM em
seus projetos, consulte Interoperabilidade COM em aplicativos .NET Framework.

COMO: Adicionar ou remover referncias no Visual Studio


Para usar um componente em seu aplicativo, voc precisa adicionar uma referncia
a ele. O Visual Studio prov cinco opes na Caixa de dilogo Add Reference:

.NET Lista todos os componentes do .NET Framework disponveis para


referncia.

COM Lista todos os componentes COM disponveis para referncia.

Projects Lista todos os componentes reutilizveis criados em projetos


locais.

Browse Permite que voc procure por um componente no sistema de


arquivos.

Recent Contm uma lista de componentes recentemente adicionados a


projetos em seu computador.

Por padro, a caixa de dilogo Add References somente lista mdulos


(assemblies) que esto na pasta Public Assemblies (Program Files\Microsoft Visual
Studio .NET\Common7\IDE\Public Assemblies) ou na Global Assembly Cache
(GAC). Para adicionar seus prprios assemblies lista, adicionando um caminho de
referncia.
Voc tambm pode adicionar referncias da Web na caixa de dilogo Add Web
Reference. Para mais informaes, consulte COMO: adicionar e remover
referncias da Web.
Observao
Voc deve evitar adicionar referncias de arquivo a sadas de outro projeto na mesma soluo, porque

Visual Studio

278

isso pode causar erros de compilao. Em vez disso, use a guia Projects da caixa de dilogo Add
References para criar referncias project-to-project. Isso torna desenvolvimento em equipe mais fcil,
permitindo melhor gerenciamento das bibliotecas de classes criadas em seus projetos. Para mais
informaes, consulte Solucionando problemas de referncias quebradas.
Observao
Se voc implantar/copiar um aplicativo que contm uma referncia a um componente personalizado que
registrado no GAC, o componente no ser implantado/copiado com o aplicativo, independentemente da
configurao Copy Local. Para mais informaes, consulte Referncias do projeto.
Observao
O procedimento para definir o caminho de referncia para projetos do Visual C# e do Visual J#
ligeiramente diferente. Para mais informaes, consulte COMO: definir o caminho de referncia (C#, J#).
Para adicionar uma referncia

1.

No Solution Explorer, clique duas vezes no n My Project do projeto.

2.

No Project Designer, clique na guia References.

3.

Clique no boto Add reference para abrir a caixa de dilogo Add


References.

4.

Na caixa de dilogo Add Reference, selecione a guia indicando o tipo de


componente que voc deseja referenciar.

5.

No painel superior, selecione o(s) componente(s) que voc deseja


referenciar, e clique OK.
Dica
Voc pode selecionar vrios componentes mantendo pressionada a tecla CTRL, desde que os
componentes estejam todos na mesma guia.

Para remover uma referncia

1.

No Solution Explorer, clique duas vezes no n My Project do projeto.

2.

No Project Designer, clique na guia References.

3.

Na lista References, selecione a referncia que deseja remover.

4.

Clique no boto Remove.


Dica
Voc tambm pode verificar seu projeto procurando referncias no utilizadas e remover todas elas de
uma vez. Para mais informaes, consulte COMO: Remover referncias no usadas.

Para definir um caminho de referncia

1.

No Solution Explorer, clique duas vezes no n My Project do projeto.

2.

No Project Designer, clique na guia References.

Visual Studio

279

3.
4.
5.

Clique no boto Reference Paths.


No campo Folder:, insira o caminho completo para a pasta que contm os
componentes.
Clique no boto Add Folder e em seguida, clique em OK
Observao
Somente a pasta especificada ser pesquisada toda vez que a caixa de dilogo Add References for aberta;
subpastas no sero pesquisadas. Voc deve adicionar um caminho separado para cada subpasta a ser
pesquisada.

COMO: Adicionar ou remover namespaces importados


Importar um namespace permite que voc use elementos deste namespace sem
qualificar totalmente o elemento. Por exemplo, se voc desejar acessar o mtodo
Create na classe System.Messaging.MessageQueue, voc pode importar o
namespace System.Messaging e apenas referenciar o elemento que voc precisa
no cdigo como MessageQueue.Create
Namespaces importados so gerenciados na pgina References do Project
Designer. As importaes que voc especificar na esta caixa de dilogo so
passadas diretamente para o compilador (/imports) e aplicadas a todos os
arquivos no seu projeto. Usar a declarao Imports para utilizar um namespace
em apenas um arquivo de cdigo fonte.
Para adicionar um namespace importado

1.

No Solution Explorer, clique duas vezes no n My Project para o projeto.

2.

No Project Designer, clique na guia References.

3.

Na lista Imported Namespaces, selecione a caixa de seleo para o


namespace que voc deseja adicionar.
Observao
Para ser importado, o namespace deve estar em um componente referenciado. Se o namespace no
aparecer na lista, voc precisar adicionar uma referncia para o componente que o contm. Para mais
informaes, consulte COMO: Adicionar ou remover referncias no Visual Studio.

Para remover um namespace importado

1.

No Solution Explorer, clique duas vezes no n My Project para o projeto.

2.

No Project Designer, clique na guia References.

3.

Na lista Imported Namespaces, desmarque a caixa de seleo para o


namespace que voc deseja remover.

Importaes do usurio

Importaes do usurio permitem que voc importe uma classe especfica de um


namespace em vez do namespace inteiro. Por exemplo, seu aplicativo pode ter uma
importao do namespace Systems.Diagnostics, mas a nica classe no

Visual Studio

280

namespace em que voc est interessado a classe Debug. Voc pode definir
System.Diagnostics.Debug como uma importao de usurio, e remover a
importao para System.Diagnostics.
Se voc posteriormente mudar de idia e decidir que foi realmente a classe
EventLog que voc necessitava, voc pode inserir System.Diagnostics.EventLog
como uma importao de usurio e substituir System.Diagnostics.Debug usando
a funcionalidade de atualizao.
Para adicionar uma importao de usurio
1.

No Solution Explorer, clique duas vezes no n My Project para o projeto.

2.

No Project Designer, clique na guia References.

3.

Na caixa de texto abaixo da lista Imported Namespaces, digite o nome


completo do namespace que deseja importar, incluindo o espao para o
namespace raiz.

4.

Clique no boto Add user import para adicionar um namespace lista


Imported Namespaces
Observao
O boto Add user import ser desativado se o namespace corresponde a um j na lista; voc no pode
adicionar uma importao duas vezes.

Para atualizar uma importao de usurio


1.

No Solution Explorer, clique duas vezes no n My Project para o projeto.

2.

No Project Designer, clique na quia References .

3.

Na lista Imported Namespaces, selecione o namespace que voc deseja


alterar.

4.

Na caixa de texto abaixo da lista Imported Namespaces, digite o nome


para o novo namespace.

5.

Clique no boto Update user import para atualizar o namespace na lista


Imported Namespaces.

COMO: Remover Referncias No Usadas


Para reduzir o tamanho do seu aplicativo, voc pode desejar remover referncias a
componentes que so na verdade no so chamados pelo seu cdigo. Isso pode ser
feito usando a caixa de dilogo Unused References, acessvel a partir da pgina
References do Project Designer
Para remover referncias no utilizados

1.

No Solution Explorer, clique duas vezes com o n My Project do projeto.


No Project Designer, clique na guia References.

2.

Clique no boto Unused references para abrir a caixa de dilogo Unused


References
O projeto varrido, e a caixa de dilogo preenchida com uma lista de
referncias que no esto sendo referenciadas no seu cdigo.

Visual Studio

281

3.

Na caixa de dilogo Unused References , marque as referncias que deseja


remover, e em seguida, clique em Remove.
As referncias selecionadas sero removidas do projeto.

COMO: Definir a propriedade Copy Local (Copiar Localmente) de uma


referncia
A Propriedade Copy Local (correspondente a CopyLocal) determina se uma
referncia copiada para o caminho de bin local. Em tempo de execuo, uma
referncia deve existir tanto no Cache Global de Assemblies (GAC) quanto no
caminho de sada do projeto. Se essa propriedade definida como True, a
referncia copiada para o caminho de sada do projeto em tempo de execuo.
Observao
Se voc implantar/copiar um aplicativo que contm uma referncia a um componente personalizado que
est registrado no GAC, o componente no ser implantado/copiado com o aplicativo, independentemente
da configurao Copy Local. Para mais informaes, consulte Referncias de projeto.
A propriedade Copy Local est definida na caixa de dilogo Reference
Properties, acessvel no painel References do Project Designer.
Para definir a propriedade Copy Local como True

1.

No Solution Explorer, clique duas vezes no n My Project para o projeto.

2.

No Project Designer, selecione a guia References.

3.

Selecione um componente referenciado na lista References.


As propriedades associadas a essa referncia aparecem numa lista na janela
Properties.

4.

Selecione Copy Local da coluna esquerda, e seguida, clique na seta da


coluna direita para alterar o valor para True.

Para definir a propriedade Copy Local como False

1.

No Solution Explorer, clique duas vezes no n My Project para o projeto.

2.

No Project Designer, selecione a guia References.

3.

Selecione um componente referenciado na lista References


As propriedades associadas a essa referncia aparecem numa lista na janela
Properties.

4.

Selecione Copy Local da coluna esquerda, e seguida, clique na seta na


coluna direita para alterar o valor para False.

Gerenciando propriedades de depurao


As propriedades de depurao que definem o comportamento da depurao, como
ao de iniccio, opes de incio, e depurao remota so definidas no painel

Visual Studio

282

Debug do designer de projeto. As seguintes tarefas podem ser realizadas no painel


Debug.

Nesta seo
COMO: Alterar a ao de incio para depurao de aplicativo
COMO: Definir opes de incio para depurao de aplicativo
COMO: Ativar depurao remota
COMO: Ativar depurao de cdigo no gerenciado
COMO: Ativar depurao de SQL Server

Gerenciando propriedades de compilao


As propriedades de compilao definindo o comportamento do compilador, como
avisos do compilador, otimizaes, e constantes de compilao, so definidas no
painel Compile do Project Designer. As seguintes tarefas podem ser realizadas
no painel Compile.

Nesta seo
COMO: Ativar ou desativar avisos do compilador
COMO: Definir otimizaes do compilador
COMO: Definir opes do compilador
COMO: Alterar o local de compilao de um aplicativo
COMO: Gerar documentao XML para um projeto
COMO: Especificar eventos de construo
COMO: Registrar um componente para interoperabilidade COM
COMO: Definir constantes de compilao
COMO: Otimizar um aplicativo para um tipo de CPU especfica
COMO: Especificar um endereo base para uma DLL
COMO: Especificar eventos de construo

Gerenciando Recursos de Aplicativo


Voc pode criar e gerenciar os recursos para o seu projeto usando o Resource
Designer ou a pgina Resources do Project Designer. Os tipos de recurso que tm
suporte para o Resource Designer incluem strings, imagens, cones, udio e
arquivos.

COMO: Adicionar ou remover recursos


Voc pode usar o Designer Resource para adicionar ou editar recursos para o seu
projeto. Os tipos de recurso suportados pelo Resource Designer incluem seqncias
de caracteres, imagens, cones, udio, e arquivos. Para obter informaes sobre

Visual Studio

283

como Resource Designer mantm recursos e informaes de Designer, consulte


Pgina de recursos, Designer de projeto.
O Resource Designer uma linguagem neutra e oferece suporte para projetos em
todos as linguagens do Visual Studio. Para Visual C# e Visual J#, gera recursos
fortemente tipados no namespace padro da pasta de projeto. o Resource
Designer Para o Visual Basic, o Resource Designer gera recursos fortemente
tipados no namespace padro da pasta de projeto My.Resources. Para
informaes sobre como acessar recursos atravs do objeto My.Resources,
consulte Acessando recursos de aplicao
Observao
Os procedimentos para adicionar e remover recursos de seqncia de caracteres diferem dos outros tipos
de recurso. Para mais informaes, consulte COMO adicionar ou remover recursos de seqncia de
caracteres:.
Alm das tarefas listadas abaixo, voc pode adicionar recursos usando arrastar-esoltar para o Resource Designer. Ao soltar, o recurso adicionado categoria
recurso apropriada com base na sua extenso de arquivo.
Se voc adicionar um recurso manualmente para o projeto (por exemplo,
adicionando um arquivo .resx usando o Solution Explorer), os recursos no novo
arquivo sero separados dos recursos que voc criou usando a pgina Resource do
Project Designer. Se voc clicar duas vezes no novo arquivo .resx, uma janela
separada do Resource Designer ser aberta, exibindo contedo do arquivo em uma
grade de configuraes. Observe que quando voc adicionar o novo arquivo .resx,
lhe ser apresentada uma mensagem perguntando, "Voc deseja ativar a gerao
de recurso fortemente tipado para este arquivo?". Clicando Yes fornecer o novo
suporte de recurso fortemente tipado, em tempo de compilao que encapsula o
acesso aos recursos criando classes que contm um conjunto de propriedades
esttica e somente leitura (GET). Isso fornece uma maneira alternativa para
consumir recursos, em vez de usar os mtodos GetString e GetObject da classe
ResourceManager. Para mais informaes, consulte StronglyTypedResourceBuilder.
Para adicionar um recurso existente

1.
2.

Com um projeto selecionado no Solution Explorer, no menu Project , clique


em Properties.
Selecione a guia Resources.

3.

Na barra de ferramentas Resource Designer, aponte para Add Resource,


clique na seta, em seguida clique em Add Existing File.

4.

Na caixa de dilogo Add existing file to resources, navegue at o arquivo


que contm o recurso que voc deseja adicionar (.bmp,.ico,.WAV, etc.,), e em
seguida, clique em Open.
O arquivo ser adicionado ao diretrio de recursos e o Resource Designer
abrir o painel Category para o tipo de recurso que voc adicionou.

5.

Para recursos de arquivo, voc pode definir opcionalmente as propriedades


Encoding e FileType para o arquivo na janela de propriedades.

Adicionar um novo recurso

1.

Com um projeto selecionado na Solution Explorer, no menu Project , clique


em Properties.

Visual Studio

284

2.

Selecione a guia Resources.

3.

Na barra de ferramentas Resource Designer, aponte para Add Resource,


clique na seta, e clique no tipo de recurso que deseja criar.

4.

Na caixa de dilogo Add new resource, digite um nome para o novo


recurso, e em seguida, clique em Add
O arquivo ser adicionado ao diretrio de recursos, e um editor de recurso
ser aberto para o tipo de recurso que voc adicionou.

5.

Para recursos de arquivo, voc pode definir opcionalmente as propriedades


Encoding e FileType para o arquivo na janela de propriedades.

Para remover um recurso

1.

Com um projeto selecionado na Solution Explorer, no menu Project , clique


emProperties.

2.

Selecione a guia Resources.

3.

Selecione um tipo de recurso a partir da lista suspensa Categories.

4.

Selecione o recurso que voc deseja remover.

5.

Na barra de ferramentas Resource Designer, clique em Remove Resource.


O recurso ser removido do Resource Designer, mas ele no ser removido da
pasta Recursos.

COMO: adicionar ou remover recursos de seqncia de caracteres


Voc pode usar o Resource Designer para adicionar ou editar recursos de seqncia
de caracteres para o seu projeto Para obter informaes sobre como o Resource
Designer mantm recursos e informaes de Designer, consulte Pgina de recursos,
Designer de projeto.
O Resource Designer uma linguagem neutra e oferece suporte para projetos em
todos os idiomas do Visual Studio. Para Visual C# e Visual J#, o Resource Designer
gera recursos fortemente tipado no espao para nome padro da pasta de projeto.
Para o Visual Basic, o Resource Designer gera recursos fortemente tipados no
espao de nome padro My.Resources para a pasta de projetos. Para informaes
sobre como acessar recursos atravs do objeto My.Resources, consulte acessando
recursos de aplicao
Se voc adicionar um recurso manualmente para o projeto (por exemplo,
adicionando arquivo .resx usando Solution Explorer), os recursos no novo arquivo
sero separados dos recursos que voc cria usando a pgina Resource do Project
Designer. Se voc clicar duas vezes no novo arquivo .resx, ser aberta uma janela
Resource Designer separada, exibindo os contedos do arquivo em uma grade
configuraes. Observe que quando voc adicionar o novo arquivo .resx, lhe ser
apresentada uma mensagem perguntando, " Voc deseja ativar a gerao do
recurso fortemente tipado para este arquivo? "Clicar Yes fornecer suporte para o
novo recurso fortemente tipado, um recurso em tempo de compilao que
encapsula o acesso aos recursos criando classes que contm um conjunto de
propriedades esttica e somente leitura (get). Isto fornece uma maneira alternativa
para consumir recursos, em vez de usar os mtodos GetString e GetObject da
classe ResourceManager. Para mais informaes, consulte
StronglyTypedResourceBuilder.

Visual Studio

285

Voc tambm pode adicionar recursos de seqncia de caracteres usando a edio


arrastar-e-soltar com o Resource Designer. Ao arrastar e soltar seqncias de
caracteres, os campos Name, Value e Comment devem ser separados por
tabulaes ou a seqncia inteira ser adicionada coluna Name
Para adicionar um recurso de seqncia de caracteres

1.

Com um projeto selecionado no Solution Explorer, no menu Project ,


clique em Properties.

2.

Clique na guiaResources. Na barra de ferramentas Resource Designer,


aponte para a lista suspensa, clique na seta, e certifique-se de que ele esteja
definido como Strings (que o padro). Uma grade de configuraes
aparecer, exibindo as seqncias de caracteres mantidas por essa instncia
do Resource Designer.

3.

Clique na coluna Name da ltima linha da grade, que est marcada com um
asterisco (*).

4.
5.
6.

Na coluna Name, insira um nome para a seqncia de caracteres.


Na coluna Value, insira a seqncia de caracteres a ser usada como um
recurso.
Opcionalmente, digite um comentrio na coluna Comment.
Observao
Comentrios no so compilados no aplicativo; eles esto disponveis somente em tempo de projeto.

Para remover um recurso de seqncia de caracteres

1.
2.

Com um projeto selecionado no Solution Explorer, no menu Project ,


clique em Properties.
Clique na guia Resources.

3.

Na barra de ferramentas Resource Designer, aponte para a lista suspensa,


clique na seta, e certifique-se de que ele esteja definido como Strings (que
o padro).

4.

Selecione a linha que contm a seqncia de caracteres que voc deseja


remover clicando no cabealho da linha cinza.

5.

Na barra de ferramentas Resource Designer, clique em Remove Resource.

COMO: Editar Recursos


Voc pode usar o Resource Designer para adicionar ou editar recursos para o seu
projeto. Os tipos de recursos suportados pelo Resource Designer incluem
seqncias de caracteres, imagens, cones, udio, e arquivos. Para obter
informaes sobre como o Resource Designer mantm os recursos e as informaes
de designer, consulte Pgina de recursos, Designer de projeto.
O Resource Designer neutro com relao a linguagem e oferece suporte a
projetos para todas as linguagens do Visual Studio. Para Visual C# e Visual J#, o
Resource Designer gera recursos fortemente tipados no namespace padro da
pasta do projeto. Para o Visual Basic, o Resource Designer gera recursos

Visual Studio

286

fortemente tipados no namespace My.Resources. Para informaes sobre como


acessar recursos atravs do objeto My.Resources, consulte Acessando Recursos
da Aplicao
Observao
Os procedimentos para recursos de edio de seqncias de caracteres diferem dos outros tipos de
recursos. Para mais informaes, consulte COMO: Recursos de Edio de Seqncias de caracteres.
Cada tipo de recurso editado usando um editor associado com a extenso de seu
arquivo. Por exemplo, o editor padro para imagens bitmap (.bmp) pode ser o
Visual Studio Bitmap Editor, mas o editor padro para imagens JPEG (.jpg) pode
ser o Windows Paint. Voc pode abrir qualquer arquivo de recursos em um editor
diferente usando o comando Open With, e voc pode alterar o editor padro de
qualquer tipo de recurso. Para mais informaes, consulte COMO: Associar um
editor com um tipo de recurso.
Para editar um recurso usando o editor padro

1.
2.

Com um projeto selecionado no Solution Explorer, no menu Project clique


em Properties.
Clique na guia Resources .

3.

Na barra de ferramentas Resource Designer, aponte na lista suspensa de


exibio de recursos, clique na seta e selecione o tipo de recurso que voc
deseja para editar

4.

Clique duas vezes no recurso para abrir o editor padro para aquele tipo de
recurso.

Para editar um recurso usando um editor diferente

1.
2.

Com um projeto selecionado no Solution Explorer, no menu Project clique


em Properties.
Clique na guia Resources.

3.

Na barra de ferramentas Resource Designer, aponte para a lista suspensa de


exibio de recursos, clique na seta e selecione o tipo de recurso que voc
deseja para editar

4.

Selecione o recurso que deseja editar, clique nele com o boto direito do
mouse e escolha Open With a partir do menu de contexto.

5.

Na caixa de dilogo Open With, escolha um editor a partir da lista Choose


the program you want to use to open this file:.
O arquivo de recurso aberto no editor selecionado.
Observao
O editor deve ser capaz de editar o tipo de recurso selecionado; por exemplo, voc no pode editar um
arquivo de bitmap em um editor de texto.

Visual Studio

287

COMO: Editar recursos que so seqncias de caracteres


Voc pode usar o Resource Designer (Designer de recurso) para adicionar ou editar
recursos para o seu projeto. Os tipos de recursos suportados pelo Resource
Designer incluem seqncias de caracteres, imagens, cones, udio e arquivos. Para
obter informaes sobre como o Resource Designer mantm recursos e
informaes do designer, consulte Pgina de recursos, Project Designer.
O Resource Designer neutro com relao linguagem e oferece suporte a
projetos em todas as linguagens do Visual Studio. Para o Visual C# e Visual J#, o
Resource Designer gera recursos fortemente tipados no namespace padro da
pasta de projeto. Para o Visual Basic, o Resource Designer gera recursos
fortemente tipados no namespace My.Resources. Para informaes sobre como
acessar recursos atravs do objeto My.Resources, consulte Acessando recursos de
aplicativos
Voc pode recortar, copiar, e colar recursos que so seqncias de caracteres entre
as linhas no editor de seqncias de caracteres, entretanto, voc no pode colar
valores individuais ou comentrios. Ao copiar e colar seqncias de caracteres de
uma origem externa, os campos Name (Nome), Value (Valor) e Comment
(Comentrio) devem ser separados por tabulaes ou a seqncia de caracteres
inteira ser adicionadas coluna Name.
Para editar um recurso que uma seqncia de caracteres

1.
2.

Com um projeto selecionado no Solution Explorer (Explorer de Soluo), no


menu Project (Projeto), clique em Properties (Propriedades).
Selecione a guia Resources (Recursos).

3.

Na barra de ferramentas Resource Designer, aponte para o modo recurso


suspenso, clique na seta e certifique-se de que ele esteja definido como
Strings (seqncias de caracteres, que o padro). Uma grade de
configuraes aparecer, exibindo as seqncias de caracteres mantidas por
essa instncia do Resource Designer.

4.

Selecione a clula na tabela de seqncias de caracteres que voc deseja


editar e comece a digitar.

Para copiar recursos que so seqncias de caracteres

1.
2.

Com um projeto selecionado no Solution Explorer, no menu Project, clique


em Properties.
Selecione a guia Resources.

3.

Na barra de ferramentas Resource Designer, aponte para o modo recurso


suspenso, clique na seta, e certifique-se de que ele esteja definido como
Strings (seqncias de caracteres, que o padro). Uma grade de
configuraes aparecer, exibindo as seqncias de caracteres mantidas no
Resources.resx.

4.

Selecione a linha que contm o recurso que uma seqncia de caracteres a


ser copiado clicando no cabealho da linha cinza.

5.

No menu Edit (Editar), clique em Copy (Copiar).

6.

No menu Edit, clique em Paste (Colar).

Visual Studio

288

Uma cpia do recurso que uma seqncia de caracteres ser adicionado


como uma nova linha na tabela de seqncias de caracteres.

COMO: Associar um editor com um tipo de recurso


Voc pode usar o Resource Designer para adicionar ou editar recursos para o seu
projeto. Tipos de recurso suportados pelo Resource Designer incluem seqncias de
caracteres, imagens, cones, udio, e arquivos. Para obter informaes sobre como
o Resource Designer mantm os recursos e informaes de designer, consulte
Pgina de recursos, Designer de projeto.
O Resource Designer neutro linguagem e oferece suporte a projetos para todas
as linguagens do Visual Studio. Para Visual C# e Visual J#, o Resource Designer
gera recursos fortemente tipados no namespace padro da pasta do projeto. Para o
Visual Basic, o Resource Designer gera recursos fortemente tipados no namespace
My.Resources. Para informaes sobre como acessar recursos atravs do objeto
My.Resources, consulte Acessando Recursos da Aplicao
Voc pode editar cada tipo de recurso usando um editor padro associado a
extenso de seu arquivo. Por exemplo, o editor padro para imagens bitmap
(.bmp) pode ser o Visual Studio Resource Editor, mas o editor padro para imagens
JPEG (.jpg) pode ser do Windows Paint. Voc pode abrir qualquer arquivo de
recurso em um editor diferente usando o comando Open With, e voc pode alterar
o editor padro para qualquer tipo de recurso.
Para alterar o editor padro de um tipo de recurso

1.
2.

Com um projeto selecionado no Solution Explorer, no menu Project clique


em Properties.
Clique na guia Resources.

3.

Na barra de ferramentas Resource Designer, aponte para a lista suspensa de


exibio de recurso, clique na seta e selecione o tipo de recurso que voc
deseja editar.

4.

Selecione o recurso que deseja editar, clique com o boto direito do mouse e
escolha Open With a partir do menu de contexto.

5.

Na caixa de dilogo Open With, escolha um editor a partir da lista Choose


the program you want to use to open this file:.

6.

Clique no boto Set as Default.


Observao
A configurao de um editor padro para um tipo de arquivo no Resource Designer tambm o define
como padro para o Visual Studio. Por exemplo, se voc definir o Bloco de Notas como o editor padro
para arquivos.txt, ao clicar duas vezes em um arquivo .txt no Solution Explorer esse arquivo ser aberto
no Bloco de notas.

Visual Studio

289

Recursos Vinculados versus Recursos Incorporados


Os projetos Visual Studio fornecem duas opes diferentes para manipular
recursos; eles podem ser vinculados (o padro) ou incorporados. Mesmo sendo
possvel ter ambos os recursos, vinculados e incorporados, em um nico projeto, na
maioria dos casos voc ir querer escolher uma opo para todos os recursos do
seu projeto.
Os recursos vinculados so armazenados como arquivos dentro do projeto; durante
a compilao os dados dos recursos so obtidos dos arquivos e colocado no
manifesto do aplicativo. O arquivo de recursos do aplicativo (.resx) armazena
somente um caminho relativo ou um link para o arquivo em disco.
Com os recursos incorporados, os dado dos recursos so armazenados diretamente
no arquivo .resx, em uma representao textual dos dados binrios. Em ambos os
casos, os dados dos recursos so compilados no arquivo executvel.
Voc pode alterar os recursos de vinculados para incorporados, alterando a
propriedade Persistence para o arquivo de recurso. Para mais informaes,
consulte HOW TO: Criar Recursos Incorporados.
Observao
Os recursos string so sempre incorporados e no podem ser alterados; os recursos de arquivo so sempre
vinculados e no podem ser alterados.
Escolhendo entre Recursos Incorporados e Recursos Vinculados

Na maioria dos casos, voc deve preferir os recursos vinculados padro. Entretanto,
h casos em que os recursos incorporados podem ser uma escolha melhor.
Recursos Incorporados
Os recursos incorporados so a melhor opo se voc precisa compartilhar arquivos
de recurso do aplicativo (.resx) entre vrios projetos. Por exemplo, se voc tiver
um arquivo de recurso comum que contm os logotipos de sua empresa,
informao de marca, etc., usar recursos incorporados significa que voc tem
apenas que copiar o arquivo .resx e no os arquivos de dados de recursos
associados.
Voc no pode editar os recursos incorporados diretamente. Se voc tentar editar
um recurso incorporado, voc receber uma mensagem solicitando que voc
converta o item para um recurso vinculado na ordem para edit-lo; a converso
recomendada mas opcional. Voc deve export-los, fazer suas modificaes em um
programa externo, e depois import-los de volta para seu projeto.
Para mais informaes, consulte HOW TO: Importar ou Exportar Recursos.
Recursos Vinculados
Os recursos vinculados (o padro) so a melhor opo pela facilidade de uso. Os
recursos podem ser editados diretamente dentro do projeto, e voc pode facilmente
adicionar ou remover recursos conforme o necessrio.

Visual Studio

290

COMO: Criar recursos incorporados


Quando voc adiciona recursos a um projeto do Visual Studio, eles so criados
como recursos vinculados. Em alguns casos, convm incorporar os recursos no
arquivo de recurso do aplicativo (.resx). Para mais informaes, consulte Recursos
vinculados vs. incorporados.
Os recursos podem ser alterados de vinculados a recursos incorporados na pgina
Resources (Recursos) do Project Designer (Designer de Projeto).
Observao
Recursos que so seqncias de caracteres so sempre incorporados ao arquivo .resx e no podem ser
alterados para recursos vinculados; recursos que so arquivos so sempre vinculados.
Para alterar um recurso de vinculado para incorporado

1.
2.
3.

4.
5.

Com um projeto selecionado no Solution Explorer (Explorer de Soluo),


no menu Project (Projeto), clique em Properties (Propriedades).
Clique na guia Resources.
Na barra de ferramentas Resource Designer (Designer de Recurso), aponte
para o modo de exibio de recurso suspenso, clique na seta e selecione o
tipo de recurso que voc deseja editar.
Selecione o recurso que voc deseja alterar.
Na janela Properties, selecione a propriedade Persistence (Persistncia) e
altere-a para Embedded in .resx (Incorporado no .resx).

Para alterar um recurso de incorporado para vinculado

1.
2.
3.

4.
5.

Com um projeto selecionado no Solution Explorer, no menu Project, clique


em Properties.
Clique na guia Resources.
Na barra de ferramentas Resource Designer, aponte para o modo de exibio
de recurso suspenso, clique na seta e selecione o tipo de recurso que voc
deseja editar.
Selecione o recurso que voc deseja alterar.
Na janela Properties, selecione a propriedade Persistence e altere-a para
Linked at compile time (Vinculado em tempo de compilao).

COMO: Importar ou exportar recursos


Voc no pode editar recursos incorporados em um projeto do Visual Studio
diretamente no IDE do Visual Studio; voc deve export-los e edit-los em um
programa externo, e em seguida import-los de volta para o projeto.
Observao

Visual Studio

291

Por padro, todos os recursos em um projeto do Visual Studio so criados como recursos vinculados;
voc precisa convert-los explicitamente para recursos incorporados. Para mais informaes, consulte
Recursos vinculados versus incorporados.
Para exportar um recurso

1.
2.
3.

4.
5.

Com um projeto selecionado na Solution Explorer, no menu Project clique


em Properties.
Selecione a guia Resources.
Na barra de ferramentas do Resource Designer, aponte para a lista suspensa
de exibio de recurso, clique na seta e selecione o tipo de recurso que voc
deseja editar
Selecione o recurso que voc deseja exportar.
Clique com o boto direito do mouse e escolha Export To File no menu de
contexto.
Observao
Este comando s estar disponvel para recursos incorporados.

6.

Na caixa de dilogo Export resource to file, procure a localidade para onde


voc deseja exportar o arquivo, e clique em Save.

Para importar um recurso

1.
2.
3.

4.
5.

Com um projeto selecionado no Solution Explorer, no menu Project clique


em Properties.
Selecione a guia Resources.
Na barra de ferramentas do Resource Designer, aponte para a lista suspensa
de exibio de recurso, clique na seta e selecione o tipo de recurso que voc
deseja editar
Selecione o recurso que voc deseja importar.
Clique com o boto direito do mouse e escolha Import From File no menu
de contexto.
Observao
Este comando s estar disponvel para recursos incorporados.

6.

Na caixa de dilogo Import file into resource, navegue at o arquivo que


deseja importar, e em seguida, clique em Open

Gerenciando definies do aplicativo


A pgina Settings do Project Designer usada para especificar configuraes de
aplicativo para o seu projeto. As tarefas a seguir podem ser realizadas na pgina
Settings:

Visual Studio

292

Configuraes de aplicativo
Configuraes de aplicativos permitem a voc guardar e recuperar configuraes de
propriedades e outras informaes da sua aplicao dinamicamente, e elas
permitem manter configurao de aplicativos e usurios personalizadas no
computador local. Freqentemente so dados (como uma seqncia de endereo
de conexo) crticos para executar o aplicativo que voc no deseja incluir
diretamente no cdigo do aplicativo. Voc pode querer armazenar duas seqncias
de conexo de banco de dados diferentes e recuperar uma deles em tempo de
execuo com base na localidade do computador. Ou, pode preferir armazenar as
preferncias de cor do usurio para recuper-las na prxima vez que o aplicativo
executado.
Atente ao fato de que configuraes do aplicativo so um recurso do Microsoft
Visual Studio 2005 que substitui o recurso de propriedades dinmicas da verso
anterior (para informaes sobre propriedades dinmicas, consulte Configurando
aplicativos usando propriedades dinmicas).
Cada configurao de aplicativo deve ter um nome exclusivo; o nome pode ser
qualquer combinao de letras, nmeros ou um sublinhado; desde que no seja
iniciada com um nmero e no contenha espaos. O nome pode ser alterado
atravs da propriedade Name.
As configuraes do aplicativo podem ser armazenadas como qualquer tipo de
dados que seja serializvel em XML ou que tenha um TypeConverter que
implementa ToString / FromString. Os tipos mais comuns so String, Integer e
Boolean, mas voc tambm pode armazenar valores como Color, Object ou como
uma seqncia de conexo.
Configuraes do aplicativo tambm contm um valor. O valor definido com a
propriedade Value e deve corresponder ao tipo de dados da configurao.
Alm disso, configuraes do aplicativo podem ser vinculadas diretamente a uma
propriedade de um formulrio ou controle em tempo de projeto. Para mais
informaes, consulte COMO: Adicionar ou remover configuraes de aplicativo.
H dois tipos de configuraes de aplicativo, com base no escopo:

Configuraes Application-Scoped podem ser usadas para informaes como


uma URL para um servio da Web ou uma seqncia de conexo de banco de
dados. Esses valores esto associados com o aplicativo, para que os usurios
no possam alter-los em tempo de execuo.

Configuraes User-Scoped podem ser usadas para informaes como


lembrar a ltima posio de um formulrio ou uma preferncia de fonte.
Usurios pode alterar esses valores em tempo de execuo.

Voc pode alterar o tipo de uma configurao usando a propriedade Scope.


O sistema de projeto armazena as configuraes do aplicativo em dois arquivos
XML: um arquivo app.config, que criado em tempo de projeto quando voc cria a
primeira configurao de aplicativo; e um arquivo user.config, que criado em
tempo de execuo quando o usurio executando o aplicativo altera o valor de
qualquer configurao de usurio. Observe que alteraes nas configuraes de
usurio no so gravadas em disco a menos que o aplicativo especificamente
chame um mtodo para fazer isso.
Criar configuraes de aplicativo em tempo de projeto

Em tempo de projeto, voc pode criar configuraes do aplicativo de duas


maneiras: com a pgina Settings do Project Designer ou com a janela

Visual Studio

293

Properties para um formulrio ou controle, permitindo que voc possa vincular


uma configurao diretamente a uma propriedade. Para mais informaes, consulte
COMO: Adicionar ou remover configuraes de aplicativo.
Quando voc cria uma configurao Application-Scoped (por exemplo, uma
seqncia de conexo de banco de dados, ou uma referncia a recursos do
servidor), o Visual Studio a salvar em app.config com a marca
<applicationSettings> (seqncias de conexo so salvas sob a marca
<connectionStrings>).
Quando voc cria uma configurao User-Scoped (por exemplo, fonte padro, home
page ou tamanho da janela), o Visual Studio a salvar em app.config com a marca
<userSettings>.
Observao de segurana
Quando voc armazenar seqncias de conexo em app.config, voc deve tomar precaues para evitar
revelar informaes sigilosas, como senhas ou caminhos do servidor, na seqncia de conexo.
Se voc recebe informaes da seqncia de conexo de uma origem externa, como um usurio
fornecendo uma identificao de usurio e senha, voc deve tomar cuidado para garantir que os valores
usados para construir a seqncia de conexo no contm parmetros adicionais que alterem o
comportamento da conexo.
Considere usar o recurso Protected Configuration para criptografar informaes sigilosas no arquivo de
configurao. Consulte Protegendo seqncias de conexo para obter mais informaes.
Observao
Devido ao fato de no haver nenhum modelo de arquivo de configurao para bibliotecas de classe,
configuraes do aplicativo no se aplicam a projetos Class Library. A exceo um projeto Visual
Studio Tools for Office DLL, que pode ter um arquivo de configurao.
Acessar ou alterar configuraes de aplicativo em tempo de execuo no Visual Basic

Observao
Esta seo se aplica somente a projetos do Visual Basic.
Em tempo de execuo, voc pode acessar configuraes de aplicativo usando o
objeto My.Settings. Na pgina Settings, clique no boto View code para exibir o
arquivo Settings.vb (para obter mais informaes, consulte COMO: acessar Settings
Events). Settings.vb define a classe Settings, que permite a voc manipular esses
eventos na classe de configuraes: SettingChanging, PropertyChanged.,
SettingsLoaded e SettingsSaving Observe que a classe Settings no Settings.vb
uma classe parcial, mostrando apenas o cdigo user-owned (cujo usurio o
proprietrio), no a classe toda gerada. Para obter mais informaes sobre como
acessar configuraes de aplicativo usando o objeto My.Settings, consulte
Acessando configraes de aplicativo.
Os valores de quaisquer configuraes User-Scoped que o usurio altere em tempo
de execuo (por exemplo, a posio do um formulrio) so armazenados em um
arquivo user.config. Observe que os valores padro ainda so salvos no app.config.

Visual Studio

294

Se voc tiver alterado quaisquer configuraes User-Scoped em tempo de execuo


durante testes do aplicativo, por exemplo, e deseja redefinir essas configuraes
para seus valores padro, clique no boto Synchronize. Para informaes sobre
este controle, consulte Pgina Settings, Project Designer.

COMO: Adicionar ou remover configuraes de aplicativo


As configuraes de aplicativo permitem a voc armazenar e recuperar
configuraes de propriedade e outras informaes para seu aplicativo
dinamicamente. H dois tipos de configuraes de aplicativo, com base no escopo:
configuraes do escopo do usurio e do escopo do aplicativo.
Em tempo de design, voc pode adicionar configuraes de aplicativo usando o
painel Settings do Project Designer, ou utilizando a janela Properties para um
formulrio ou controle, que permite a voc vincular uma configurao diretamente
a uma propriedade.
Para adicionar configuraes de aplicativo no Project Designer

1.

Selecione um projeto no Solution Explorer; no menu Project , clique em


Properties.

2.

Selecione o painel Settings.

3.

Clique em uma linha em branco na grade Settings

4.

Digite um nome para a configurao na coluna Name. O nome no pode


conter espaos.

5.

Selecione um tipo de dados para a configurao na lista suspensa Type.

6.

Selecione o escopo da configurao na lista suspensa Scope. A configurao


do escopo pode ser Application ou User.

7.

Insira um valor padro para a configurao na coluna Value. O valor deve


ser apropriado para o tipo de dado selecionado.

Para adicionar configuraes de aplicativo na janela Properties

1.

Selecione um formulrio ou controle no Form Designer; no menu View,


clique em Properties Window.

2.

Na janela Properties, expanda a propriedade (Application Settings)


(localizada sob o n Data).

3.

Selecione a propriedade (Property Binding) e clique no boto de


reticncias (...) para abrir a caixa de dilogo Application Settings.

4.

Na caixa de dilogo Application Settings, selecione a propriedade a qual


voc deseja adicionar uma configurao de aplicativo.

5.

Na lista suspensa para a propriedade, clique em (New...) para abrir a caixa


de dilogo New Application Setting.

6.

Na caixa de dilogo New Application Setting, selecione a propriedade


Name e digite um nome para a configurao. O nome no pode conter
espaos.

7.

Selecione a propriedade DefaultValue e digite um valor padro para a


configurao.

Visual Studio

295

8.

Selecione o escopo da configurao na lista suspensa Scope. A configurao


do escopo pode ser Application ou User.

9.

Para vincular a nova configurao propriedade, selecione-a na lista


suspensa, e em seguida clique em OK.
A ligao da propriedade ser adicionada janela Properties, e a nova
configurao ser adicionada ao Project Designer. Observe que depois de
ter criado a configurao, voc deve usar o Project Designer para alter-la.

Para remover configuraes de aplicativo

1.
2.

Selecione um projeto no Solution Explorer; no menu Project , clique em


Properties.
Selecione o painel Settings.

3.

Na grade Settings, clique na linha da configurao que voc deseja


remover.

4.

Pressione a tecla Delete ou clique com o boto direito do mouse e selecione


Remove Setting.
A configurao ser removida do Project Designer.
Observao
Ser necessrio remover configuraes manualmente do App.config porque o Project Designer no
remove quaisquer referncias para configuraes de aplicativo no cdigo ou em seu prprio cdigo.

COMO: Acessar eventos de configurao


Os eventos de configurao permitem que voc escreva o cdigo em resposta s
alteraes de escopo do aplicativo ou do usurio. Os eventos de configurao
incluem:

O evento SettingChanging disparado antes que o valor de uma


configurao seja alterado.

O evento PropertyChanged disparado aps o valor de uma configurao ter


sido alterado.

O evento SettingsLoaded disparado aps os valores de configurao serem


carregados.

O evento SettingsSaving disparado antes dos valores de configurao


serem salvos.

Para informaes sobre como programar usando esses eventos, consulte Acessando
configuraes de aplicativo
Os eventos de configurao podem ser acessados a partir do painel Settings do
Project Designer.
Para acessar eventos de configurao

1.
2.

Selecione um projeto no Solution Explorer, e em seguida, no menu


Project , clique em Properties
Selecione o painel Settings.

Visual Studio

296

3.

Clique no boto View code para abrir o arquivo Settings.vb ou Settings.cs


no editor de cdigos. Esse arquivo define mtodos que manipulam os eventos
disparados quando as configuraes de usurio so alteradas, carregadas, ou
salvas.

Gerenciando propriedades de projeto C# e J#


Voc pode usar o Project Designer para definir propriedades em projetos Visual
C# e Visual J# . Os tpicos nesta seo se aplicam especificamente a projetos
Visual C# e Visual J# . Os tpicos de sees relacionadas se aplicam a propriedades
de projeto Visual C# e Visual J#, bem como propriedades de projeto Visual Basic.

Como definir propriedades do projeto (C#, J#):


Propriedades de um projeto especificam como um projeto criado e depurado, bem
como que bibliotecas ele referencia, como e onde ele publicado, e quaisquer
configuraes de segurana a serem usadas. Use o Project Designer para definir as
propriedades do projeto. Para mais informaes, consulte Introduo ao Project
Designer.
Observao
As opes disponveis na caixas de dilogo e os nomes e locais de comandos de menu que voc v podem
ser diferentes das que so descritas na Ajuda dependendo das suas configuraes ativas ou edio. Esta
pgina de Ajuda foi escrita baseada na idia de General Development settings. Para exibir ou alterar
suas configuraes, escolha Import and Export Settings no menu Tools. Para mais informaes,
consulte Configuraes do Visual Studio.
Definindo propriedades usando o Project Designer

Voc pode exibir as configuraes de propriedades no Project Designer quando voc


seleciona o projeto no Solution Explorer.
Observao
Acesse as propriedades de um arquivo individual na janela Properties.
Para definir as propriedades do projeto no Project Designer
1.

No Solution Explorer, selecione o projeto.

2.

No menu Project, clique em <Project Name> Properties.

3.

Selecione o nome da pgina de propriedades a ser alterada ou visualizada.

4.

Defina as propriedades.

Observao
O Project Designer no possui botes OK ou Cancel. Todas as alteraes de propriedade tero efeito
imediato no projeto ativo; entretanto, as configuraes so confirmadas para o arquivo do projeto somente
quando voc seleciona uma das opes de salvamento ou quando voc fecha o designer.

Visual Studio

297

Observao
Propriedades que esto cinza so definidas em outros painis de propriedades. Elas so exibidas somente
para fins informativos.
Se voc tiver uma soluo de multiprojeto, voc pode usar mais de uma instncia
do Project Designer ao mesmo tempo.

COMO: Definir o Caminho de Referncia (C#, J#)


Quando voc faz referncia a uma assembly em seu projeto, Visual Studio
primeiramente procurar a assembly no diretrio do projeto. Se voc usar uma
assembly no localizada no diretrio do projeto, voc pode especificar sua
localidade na Pgina Project Designer, Reference Path (C#, J#) do Project
Designer.
Observao
O procedimento para definir o caminho de referncia para projetos Visual Basic ligeiramente diferente.
Para mais informaes, consulte COMO: Adicionar ou Remover Referncias no Visual Studio.
Observao
Se a referncia para a assembly no estiver no projeto ou listada no painel Reference Paths do Project
Designer, o Visual Studio verifica as pastas exibindo os arquivos na Caixa de Dilogo Add Reference.
Voc pode adicionar quantos caminhos de referncia forem necessrios.
Observao
As opes disponveis nas caixas de dilogo e os nomes e locais de comandos de menu voc v podem
ser diferentes dos que so descritos na Ajuda, dependendo da sua edio ou configurao ativa. Esta
pgina Ajuda foi escrito com as General Development settings em mente. Para exibir ou alterar as
configuraes, escolha Import and Export Settings no menu Tools. Para mais informaes, consulte
Configuraes Visual Studio.
Para definir um caminho de referncia

1.

No Solution Explorer, selecione o projeto.

2.

No menu Project, clique em <Nome do Projeto> Properties.

3.

Clique em Reference Paths.

4.
5.

Na caixa de texto Folder, especifique o caminho para a pasta contendo


mdulos (assemblies). Para procurar a pasta, clique nas reticncias ().
Clique em Add Folder.

Para substituir um caminho de referncia

1.

No Solution Explorer, selecione o projeto.

Visual Studio

298

2.

No menu Project, clique em <Nome do Projeto> Properties.

3.

Clique em Reference Paths.

4.

Na caixa Reference Path, selecione o caminho para sobrescrever.

5.

Na caixa de texto Folder, especifique o caminho para a pasta contendo


mdulos (assemblies). Para procurar o caminho, clique nas reticncias ().

6.

Clique em Update. O caminho selecionado na caixa Reference Path


sobrescrito pelo caminho especificado na caixa de texto Folder.

Para remover um caminho de referncia

1.

No Solution Explorer, selecione o projeto.

2.

No menu Project, clique em <Nome do Projeto> Properties.

3.

Clique em Reference Paths.

4.

Na caixa Reference Path, selecione o caminho para remover.

5.

Clique em Remove.

COMO: Definir as Propriedades de Compilao (C#, J#)


Usando o Build Pane e o Build Events Pane do Visual Studio Project Designer,
voc pode especificar as configuraes e os eventos de compilao para controlar a
configurao de compilao e a compilao do seu projeto. Veja Pgina de
Compilao, Project Designer (C#), Pgina de Compilao, Project Designer (J#) e
Eventos da Pgina de Compilao, Project Designer (C#, J#) para obter mais
informaes.
Voc pode definir as opes do compilador, os eventos de pr-compilao e os
eventos de ps-compilao a partir do Project Designer. Consulte COMO:
Especificar Eventos de Compilao (C#, J#) para obter mais informaes sobre
como usar o Project Designer para selecionar os eventos de pr e ps-compilao.
Observao
As opes disponveis nas caixas de dilogo e os nomes e locais dos comandos de menu que voc v
podem diferir do que descrito na Ajuda, dependendo de suas configuraes ativas ou da edio. Esta
pgina de Ajuda foi escrita com o General Development settings como base. Para exibir ou alterar as
configuraes, escolha Import and Export Settings no menu Tools. Para mais informaes, consulte
Configuraes do Visual Studio.
Para acessar e modificar as propriedades de compilao

1.

No Solution Explorer, selecione o projeto para o qual voc deseja especificar


o evento de compilao.

2.

No menu Project, clique em <Project Name> Properties.

3.

Selecione a guia Build.

4.

A partir da lista Configuration, especifique a sua configurao: Ativa


(Depurao), Depurao ou compilao de Verso Final. Por padro, esta
opo definida como Ativa (Depurao).

Visual Studio

299

5.

Defina as propriedades de compilao restantes, incluindo quaisquer


configuraes avanadas. Consulte Caixa de Dilogo Advanced Build Settings
(C#) ou Caixa de Dilogo Advanced Build Settings (J#) para obter mais
informaes.

COMO: Especificar eventos de compilao


Eventos de compilao no Visual Basic podem ser usados para executar scripts,
macros ou outras aes como parte do processo de compilao. Eventos pre-build
ocorrero antes da compilao; eventos post-build ocorrem aps a compilao.
Eventos de compilao so especificado na caixa de dilogo Build Events,
acessvel da pgina Compile do Project Designer.
Para especificar eventos de compilao

1.

Com um projeto selecionado no Solution Explorer, clique em Properties


no menu Project.

2.

Clique na guia Compile.

3.

Clique no boto Build Events para abrir a caixa de dilogo Build Events

4.

Insira os argumentos de linha de comando para a ao pre-build ou postbuild, e clique OK.

COMO: Adicionar e remover referncias no Visual Studio (C#, J#)


A caixa de dilogo Add Reference pode ser usada para adicionar ou excluir
referncias de projeto. Esta caixa de dilogo pode ser acessada a partir do menu
Project. Para mais informaes, consulte Caixa de dilogo Add Reference.
Para adicionar uma referncia de projeto

1.

No Solution Explorer, selecione o projeto.

2.

No menu Project, escolha Add Reference.


A caixa de dilogo Add Reference aberta.

3.

Selecione a guia indicando o tipo de componente que voc deseja


referenciar.

4.

No painel superior, selecione o componente que voc deseja referenciar, e


depois clique no boto Select. Pressione e segure a tecla CTRL enquanto clica
para selecionar vrios componentes.
Dica
Se o componente que voc estiver procurando no estiver na lista, voc pode localiz-lo usando o boto
Browse.

5.

Clique em OK depois que voc tiver selecionado todos os componentes


necessrios.
As referncias selecionadas sero exibidas sob o n References do projeto.

Visual Studio

300

Para remover uma referncia de projeto

No Solution Explorer, clique com o boto direito do mouse na referncia sob


o n References, e selecione Remove no menu de atalho.

Local e projetos da Web


No h vrios fatores a considerar quando voc decide se usar um local ou modelo
do projeto da Web para seu aplicativo.
Primeiro, estratgia instalao devem desempenhar um papel no sua deciso geral.
Se voc precisar um aplicativo Quick-deploying em um servidor com a configurao
do cliente mnima, o modelo de projeto da Web melhor. Voc pode instalar e
executar este projeto no servidor sem instalar arquivos de suporte em cada cliente,
e fazer atualizaes somente em servidor. Entretanto, para projetos que tm pouca
envolvimento servidor ou para aplicativos autnomos, um modelo de projeto local
a melhor opo. No nesse cenrio, atualizaes pode ser concluda em cada
computador cliente individual.
Outro fator a diviso de carga. Quando Analisando estrutura do seu aplicativo,
voc precisa considerar a maior do trabalho para onde est indo a ser feito.
Projetos da Web oferecem uma estratgia servidor onde a maioria das operaes
so conduzidas no servidor. O computador cliente utiliza um navegador da Web
para enviar informaes para e exibir informaes do aplicativo do servidor. Se os
recursos do servidor esto limitados, considere usando um modelo de projeto local
para seu aplicativo. O trabalho pode ser feito no computador cliente sem
consumindo hora servidor precious.
A tabela a seguir fornece uma comparao lado a lado de projetos da Web e
projetos no design e ambientes de trabalho local:
Considerao

Projeto da Web

Projeto local

Armazenamento de
arquivos durante o
desenvolvimento

Os arquivos so armazenados em um URL


especificado em um computador com Servios de
Informaes da Internet (IIS) instalado. O projeto
tambm mantm um cache temporrio de arquivos
em computadores cliente para trabalhar off-line.

Arquivos projeto so
armazenados no
computador local.

Criar modelo ao
desenvolver

Cdigo de aplicativo compilado como uma DLL e Cdigo compilado e


executar no servidor. Resultados so visto no
executado no computador
computador cliente.
cliente.

Mtodo de
implantao

O projeto implantado em um servidor Web.

Arquivos de projeto so
instalados no computador
cliente com arquivos de
suporte necessrios.

Carga de trabalho

Computadores cliente executar o aplicativo


remotamente com um navegador da Web.
Processamento feito principalmente no servidor.

O aplicativo executado
localmente em o
computador cliente.

Visual Studio

301

Atualizar

Alteraes de aplicativo so feitas no nvel do


As atualizaes de
servidor sem instalao dos arquivos de suporte em aplicativos so instalados
computadores clientes.
em computadores cliente.

Movendo arquivos
projeto

O comando Copy Project usado para mover


arquivos para o URL especificado.

Fisicamente arquivos
projeto so copiados de
uma localidade para outro.

Propriedades de arquivo
Voc pode usar propriedades de arquivo para indicar quais aes o sistema do
projeto deve executar nos arquivos. Por exemplo, voc pode definir propriedades
de arquivo para indicar se um arquivo deve ser compilado ou incorporado sada
da compilao como um recurso
Voc pode selecionar qualquer arquivo no Solution Explorer e depois examinar suas
propriedades na janela Properties. Arquivos do Visual Basic e Visual C# tm quatro
propriedades: FileName, BuildAction, CustomTool, e CustomToolNamespace.
Observao
As propriedades BuildAction, CustomTool, e CustomToolNamespace so fornecidas para cenrios
avanados. Os valores padro so normalmente suficientes e no precisam ser alterados.
Propriedade FileName

Voc pode renomear um arquivo, clicando na propriedade Propriedade FileName


(Extenses para VB e CSharp) na janela Properties e digitando o novo nome.
Observe que se voc alterar o nome do arquivo, o Visual Studio automaticamente
renomear qualquer arquivo .vb ou .resx associados a ele.
Propriedade BuildAction

A Propriedade BuildAction (Visual Basic e C# ProjectItem Object) indica o que o


Visual Studio faz com um arquivo quando uma compilao executada.
BuildAction pode ter um dos vrios valores:

None. O arquivo no includo no grupo de sada do projeto e no


compilado no processo de compilao. Um exemplo um arquivo texto que
contm documentao, como por exemplo um arquivo leiame.

Compile. O arquivo compilado para a sada de compilao. Essa


configurao utilizada para arquivos de cdigo.

Content. O arquivo no compilado, mas includo no grupo de sada de


contedo. Por exemplo, essa configurao o valor padro para um arquivo
.htm ou outro tipo de arquivo da Web.

Embedded Resource. Este arquivo incorporado sada de compilao do


projeto principal como uma DLL ou executvel. Ele normalmente usado para
arquivos de recurso.

O valor padro para BuildAction depende da extenso do arquivo que voc


adicionar soluo. Por exemplo, se voc adicionar um projeto do Visual Basic ao

Visual Studio

302

Solution Explorer, o valor padro para BuildAction Compile, porque a extenso


.vb indica um arquivo de cdigo que pode ser compilado. Nomes e extenses de
arquivos aparecem no Solution Explorer.
Observe que o nome do arquivo no seu projeto no ser o identificador para o
recurso gerenciado no manifesto do assembly (consulte Manifesto do assembly para
obter mais informaes). O identificador ser namespace.nomearquivo.extenso,
onde namespace o valor da propriedade DefaultNamespace em um projeto do
Visual C# ou da propriedade RootNamespace em um projeto do Visual Basic.
Nomearquivo e extenso permanecem os mesmos que suas designaes originais.
Se o arquivo for um arquivo .resx, o sistema do projeto executar resgen.exe no
arquivo, criando um arquivo .resource. O arquivo .resource ser incorporado ao
assembly, portanto o manifesto do assembly far referncia ao arquivo .resources e
no ao arquivo .resx.
Por exemplo, se voc adicionar o arquivo MeuArquivo.bmp a um projeto cujo
namespace padro MeuProjeto, e definir a ao de compilao como Embedded
Resource, MeuProjeto.MeuArquivo.bmp ser o identificador no manifesto do
assembly. Se voc depois adicionar o arquivo MeuArquivo.resx ao projeto, a ao
de compilao padro ser Embedded Resource, e
MeuProjeto.MeuArquivo.resources ser o identificador no manifesto do assembly.
Observe que, quando o editor de recursos adiciona uma imagem, ele configura
Build Action como None, porque o arquivo .resx referencia o arquivo de imagem.
Em tempo de compilao, a imagem colocada no arquivo .resources criado a
partir do arquivo .resx. A imagem pode depois ser facilmente acessada atravs da
classe fortemente tipada auto-gerada para o arquivo .resx. Portanto, voc no deve
alterar esta configurao para Embedded Resource, porque fazer isso dever
incluir a imagem duas vezes no assembly.
Para obter mais informaes sobre como acessar arquivos de recurso (compilados a
partir de arquivos .resx) em tempo de execuo, consulte Classe ResourceManager.
Para obter mais informaes sobre como acessar todos os outros arquivos
incorporados e recursos em tempo de execuo, consulte Mtodo
Assembly.GetManifestResourceStream.
Propriedade CopyToOutputDirectory

Esta propriedade especifica as condies sob as quais o arquivo de origem


selecionado ser copiado para a pasta de sada. Selecione Do not copy se o
arquivo no deve ser nunca copiado para o diretrio de sada; Copy always se o
arquivo deve ser sempre copiado para o direttio de sada; ou Copy if newer se o
arquivo deve ser copiado somente quando ele for mais recente que um arquivo
existente com o mesmo nome no diretrio de sada.
Observao
Em projetos de dispositivo inteligente, a renovao de um arquivo .dll ou .exe determinada comparando
as verses Win32 da seguinte maneira:
Se a verso do lado do dispositivo for menor do que a da rea de trabalho, o arquivo copiado.
Se a verso do lado do dispositivo for maior do que a da rea de trabalho, o arquivo no copiado.
Se as verses forem iguais, uma comparao de soma de verificao feita. Se as somas de verificao
forem iguais, o arquivo no copiado. Se as somas de verificao forem diferentes, o arquivo copiado.
A renovao dos arquivos diferentes de .dll e .exe baseada somente em soma de verificao.

Visual Studio

303

Propriedade CustomTool

Ferramentas personalizadas so componentes que podem ser usados para


transformar arquivos de um tipo em outro em tempo de design. Por exemplo, uma
ferramenta personalizada pode ser um gerador de cdigo de DataSet que l um
arquivo de esquema XML (.xsd) como entrada, e gera classes em um arquivo de
cdigo que programaticamente expem suas tabelas e colunas. Existe uma lista
pr-definida de ferramentas personalizadas disponveis no produto; esta
propriedade permite que voc veja qual ferramenta personalizada aplicada a um
arquivo. Em raras circunstncias, pode ser necessrio que voc altere o valor dessa
propriedade. O valor desta propriedade deve estar em branco ou ser uma das
ferramentas personalizadas internas.
Para definir ou alterar a ferramenta personalizada, clique na propriedade
Propriedade CustomTool (Visual Basic e C# ProjectItem Object) na janela de
propriedades e digite o nome de uma ferramenta personalizada.
Propriedade CustomToolNamespace

Se voc tiver uma ferramenta personalizada atribuda ao seu projeto, a propriedade


Propriedade CustomToolNamespace (Visual Basic e C# ProjectItem Object) permite
que voc especifique o namespace que voc deseja atribuir ao cdigo gerado pela
ferramenta personalizada. Quando voc especificar um valor para a propriedade
CustomToolNamespace, o cdigo gerado pela ferramenta ser colocado no
namespace especificado. Se a propriedade estiver vazia, cdigo gerado ser
colocado no namespace padro para a pasta na qual o arquivo convertido reside;
para o Visual Basic, este o namespace raiz do projeto, e para o Visual C# isso
corresponde configurao da propriedade Propriedade DefaultNamespace (Visual
Basic e C# Project Object) para a pasta.

Tipos de arquivos e extenses de arquivos no Visual Basic, Visual C#, e


Visual J#
Itens de projeto referem-se aos tipos de arquivos que voc adiciona a um projeto.
Os itens de projeto, disponveis para voc, diferenciam-se dependendo se voc
estiver trabalhando em um projeto local ou em um projeto da Web. Para obter mais
informaes, consulte Projetos locais e da Web e Tour guiado de como se criar sites
da Web no Visual Studio.
Adicionando itens de projeto

A caixa dilogo Add New Item acessada atravs do menu Project. Para obter
mais informaes sobre como adicionar itens ao seu projeto, consulte COMO:
Adicionar novos itens de projeto.
As seguintes tabelas listam os itens de projeto disponveis para projetos locais e
projetos da Web. Observe que para alguns itens de projeto, a extenso de arquivo
diferente, dependendo se o item aparece em um projeto Visual Basic (indicado
por .vb), em um projeto Visual C# (indicado por .cs), ou em um projeto Visual J#
(indicado por .jsl). Para outros itens de projeto, a extenso de arquivo no faz
distino entre um projeto Visual Basic, um projeto Visual C#, e um projeto Visual
J#; isto , h apenas uma extenso possvel para o item de projeto.

Visual Studio

304

Itens de projeto locais

Item de projeto

Extenso de
arquivo

Finalidade do item de projeto

Windows Form

.vb ou .cs ou
.jsl ou .java

Um formulrio para criar aplicativos baseados no Windows.

Explorer Form

.vb ou .cs ou
.jsl ou .java

Um formulrio do Explorer com modo de exibio de rvore e


controles de navegao.

MDI Parent Form

.vb ou .cs ou
.jsl ou .java

Um formulrio para um aplicativo de interface de documentos


mltiplos.

About Box

.vb ou .cs ou
.jsl ou .java

Um formulrio de caixa de dilogo About para aplicativos baseados


no Windows

Login Form

.vb ou .cs ou
.jsl ou .java

Um formulrio de logon para coletar um nome de usurio e senha.

Splash Screen

.vb ou .cs ou
.jsl ou .java

Um formulrio pr-configurado para ser usado como tela inicial.

Dialog

.vb ou .cs ou
.jsl ou .java

Um dilogo para aplicativos baseados no Windows.

Class

.vb ou .cs ou
.jsl ou .java

Um arquivo de cdigo que contm uma declarao de classe. Para


mais informaes, consulte Classes no Common Type System.

Interface

.vb ou .cs ou
.jsl ou .java

Uma nova interface.

Module (Visual
Basic somente)

.vb

Um arquivo para armazenar grupos de funes.

Component Class

.vb ou .cs ou
.jsl ou .java

Uma classe para criar componentes usando o visual designer. Para


mais informaes, consulte Classes de componente.

User Control

.vb ou .cs ou
.jsl ou .java

Uma classe para criar um controle de Windows Form usando o


visual designer.

Windows Service

.vb ou .cs ou
.jsl ou .java

Uma classe para criar servios do Windows. Para mais informaes,


consulte COMO: Criar servios do Windows.

DataSet

.xsd

Um arquivo para criar um esquema XML com classes DataSet.


Para mais informaes, consulte Gravando informaes de esquema
de DataSet como esquema XML (XSD).

Visual Studio

305

SQL Database

.mdf

Um banco de dados SQL vazio para dados locais.

XML File

.xml

Um arquivo XML em branco. Para mais informaes, consulte


Designer de esquema XML (XML Designer).

XML Schema

.xsd

Um arquivo para criar um esquema de documentos XML. Para mais


informaes, consulte Introduo a esquemas XML (XML
Designer).

Settings File

.settings

Um arquivo de configuraes do usurio em branco.

Code File

.vb ou .cs ou
.jsl ou .java

Um arquivo de cdigo em branco.

Custom Control

.vb ou .cs ou
.jsl ou .java

Uma classe para criar um controle de Windows Forms de usurio.


Para mais informaes, consulte COMO: Autorar controles para
Windows Forms.

HTML Page

.htm

Uma pgina HTML que pode incluir cdigo do lado do cliente. Para
mais informaes, consulte Modo de exibio Design.

Inherited Form

.vb ou .cs ou
.jsl ou .java

Um novo formulrio baseado em um formulrio existente. Para


mais informaes, consulte Herana visual do Windows Forms.

Inherited User
Control

.vb ou .cs ou
.jsl ou .java

Um novo controle baseado em um controle Windows Forms


existente. Para mais informaes, consulte COMO: Herdar de
controles Windows Forms existentes.

Web Custom
Control

.vb ou .cs ou
.jsl ou .java

Uma classe para criar um controle de servidor ASP.NET. Para mais


informaes, consulte Controles de servidor da Web do ASP.NET
(Visual Studio).

COM Class

.vb ou .cs

Uma classe que pode ser exposta ao COM. Para mais informaes,
consulte Interoperabilidade COM em aplicativos do .NET
Framework.

Transactional
Component

.vb ou .cs

Uma classe para uso com componentes transacionais.

Arquivo de texto

.txt

Um arquivo de texto vazio.

XSLT File

.xslt

Um arquivo usado para transformar documentos XML.

Installer Class

.vb ou .cs ou
.jsl ou .java

Uma classe para ser chamada no momento da instalao. Para mais


informaes, consulte Usando componentes de instalao.

Visual Studio

306

Crystal Report

.rpt

Um arquivo Crystal Report que publica dados para um Windows


form.

Bitmap File

.bmp

Um arquivo de imagem de bitmap em branco que pode ser usado


para criar imagens simples.

Cursor File

.cur

Um arquivo para criar cursores personalizados. Para mais


informaes, consulte Criao de cursores.

Icon File

.ico

Um arquivo de imagem para criar um cone personalizado. Para


mais informaes, consulte cones.

Resources File

.resx

Um arquivo usado para editar e definir recursos de aplicativo. Para


mais informaes, consulte Recursos em aplicativos.

Assembly
Information File

.vb ou .cs ou
.jsl

Um arquivo contendo informaes de assembly gerais. Para mais


informaes, consulte Assemblies na Common Language Runtime.

Application
Configuration File

.config

Um arquivo usado para definir configuraes de aplicativo. Para


mais informaes, consulte Arquivos de configurao.

Debugger
Visualizer

.vb ou .cs ou
.jsl ou .java

Um simples visualizador depurador

Class Diagram

.cd

Um diagrama de classe.

Report

.rdlc

Um novo relatrio vazio.

JScript File

.js

Um arquivo de script que contm cdigo JScript. Para mais


informaes, consulte Guia de Introduo do JScript.

VBScript File

.vbs

Um arquivo de script que contm cdigo VBScript. Para mais


informaes, consulte Guia do Usurio do VBScript.

Windows Script
Host

.wsf

Um arquivo contendo script que executado como um programa do


Windows. Para mais informaes, consulte Usando arquivos de
script do Windows (.wsf).

Itens de projeto da Web

Extenso de
Item de projeto arquivo
Web Form

Finalidade do item de projeto

Dois arquivos: .aspx, Um formulrio para criar aplicativos da Web.


e .vb para Visual
Basic ou .cs para
Visual C# ou .jsl

Visual Studio

307

para Visual J#
Master Page

.master

Uma pgina mestre para aplicativos da Web.

Web User
Control

.ascx

Um controle de servidor do ASP.NET criado usando o visual


designer.

HTML Page

.htm

Uma pgina HTML que pode incluir cdigo do lado do cliente.


Para mais informaes, consulte Modo de exibio Design.

Web Service

Dois arquivos:
.asmx, e .vb para
Visual Basic ou .cs
para Visual C# ou
.jsl para Visual J#

Um componente que fornece a capacidade de trocar mensagens


interoperveis usando protocolos padres, tais como HTTP,
XML, XSD, SOAP e WSDL. Para mais informaes, consulte
Criando XML Web services em cdigo gerenciado.

Class

.vb ou .cs ou .jsl

Um arquivo de cdigo que contm uma declarao de classe.

Style Sheet

.css

Uma folha de estilo em cascata usada para definies de estilo


HTML. Para mais informaes, consulte COMO: Criar folhas de
estilo em cascata externas (Visual Studio).

Global
Application
Class

.asax

s vezes chamado de arquivo asax, esse arquivo permite que


voc escreva cdigo para manipular eventos globais a nvel de
aplicativo do ASP.NET, tais como Session_OnStart e
Application_OnStart. O nome do arquivo global.asax, o qual
voc no pode alterar.

Web
Configuration
File

.config

O ASP.NET usa este arquivo para definir as configuraes da


Web para um projeto da Web. O nome do arquivo Web.config,
o qual voc no pode alterar.

XML File

.xml

Um arquivo XML em branco. Para mais informaes, consulte


Designer de esquema XML (XML Designer).

XML Schema

.xsd

Um arquivo para criar um esquema de documentos XML. Para


mais informaes, consulte Introduo a esquemas XML (XML
Designer).

XSLT File

.xslt

Um arquivo usado para transformar documentos XML.

Text File

.txt

Um arquivo de texto vazio.

Assembly
Resource File

.resx

Um arquivo usado para editar e definir recursos de aplicativo.


Para mais informaes, consulte Recursos em aplicativos.

Assembly

.vb ou .cs ou .jsl

Um arquivo contendo informaes de assembly gerais. Para


mais informaes, consulte Assemblies na Common Language

Visual Studio

308

Information File

Runtime.

SQL Database

.mdf

Um banco de dados SQL vazio para dados locais.

DataSet

.xsd

Um arquivo para criar um esquema XML com classes DataSet.


Para mais informaes, consulte Gravando informaes de
esquema de DataSet como esquema XML (XSD).

Generic
Handler

.ashx

Uma pgina para implementar um manipulador genrico

Site Map

.sitemap

Um arquivo usado para criar um mapa do site.

Mobile Web
Form

.aspx

Um formulrio para criar aplicativos da Web mveis. Para mais


informaes, consulte Criando aplicativos da Web do ASP.NET
para dispositivos mveis.

Mobile Web
User Control

.ascx

Um controle de servidor ASP.NET criado usando o visual


designer e usado em um aplicativo da Web para dispositivos
mveis. Para mais informaes, consulte Criando aplicativos da
Web do ASP.NET para dispositivos mveis.

Mobile Web
Configuration
File

.config

O ASP.NET usa este arquivo para definir as configuraes de


um projeto da Web para dispositivos mveis. O nome do
arquivo Web.config, o qual voc no pode alterar. Para mais
informaes, consulte Criando aplicativos da Web do ASP.NET
para dispositivos mveis.

Crystal Report

.rpt

Um arquivo Crystal Report que publica dados para um Web


Form.

VBScript File

.vbs

Um arquivo de script que contm cdigo VBScript. Para mais


informaes, consulte Guia do usurio do VBScript.

JScript File

.js

Um arquivo de script que contm cdigo JScript. Para mais


informaes, consulte Guia de Introduo do JScript.

Windows Script .wsf


Host

Um arquivo de cdigo vazio usado para scripts do Windows.


Para mais informaes, consulte Introduo a aplicativos de
servio do Windows.

Skin File

.skin

Um arquivo usado para definir um tema do ASP.NET.

Browser File

.browser

Um arquivo para configurar definies de navegador

Report

.rdlc

Um novo relatrio vazio.

Visual Studio

309

Module (Visual
Basic somente)

.vb

Um arquivo para armazenar grupos de funes.

Component
Class

.vb ou .cs

Uma classe para criar componentes usando o visual designer.

Data Form
Wizard

.aspx (.vb ou .cs


para projetos locais)

Um formulrio de dados para aplicativos da Web.

Frameset

.htm

Um arquivo HTML que hospeda mltiplas pginas HTML. Para


mais informaes, consulte Introduo a conjuntos de quadros.

Web Custom
Control

.vb ou .cs ou .jsl

Uma classe para criar um controle de servidor do ASP.NET.


Para mais informaes, consulte Controles de servidor da Web
do ASP.NET (Visual Studio).

Code File

.vb ou .cs ou .jsl

Um arquivo de cdigo em branco.

Static
Discovery File

.disco

Um arquivo opcional que atua como um mecanismo de


descoberta para o XML Web service. O arquivo .disco no
criado automaticamente para um XML Web service. Para
informaes como criar um arquivo de descoberta para seu
XML Web service, consulte COMO: Ativar descoberta para
XML Web services.

Installer Class

.vb ou .cs ou .jsl

Uma classe para ser chamada no momento da instalao. Para


mais informaes, consulte Usando componentes de instalao.

Bitmap File

.bmp

Um arquivo de imagem de bitmap em branco que pode ser usado


para criar imagens simples.

Cursor File

.cur

Um arquivo para criar cursores personalizados. Para mais


informaes, consulte Criao de cursores.

Icon File

.ico

Um arquivo de imagem para criar um cone personalizado. Para


mais informaes, consulte cones.

Modelos de projeto padro no Visual Studio


Quando voc criar um novo projeto, cones nas caixas de dilogo New Project e
Add Project representam os tipos de projeto disponveis e seus modelos. O
modelo de projeto que est associado ao cone de projeto de sua escolha determina
o tipo de sada e outras opes disponveis para o projeto.
A tabela a seguir lista os tipos padro de projetos disponveis no Visual Studio.
Modelo de

Usado para criar

Visual Studio

310

projeto
Modelo Biblioteca
de classe

Classes reutilizveis ou componentes que podem ser compartilhados com outros


projetos. Esse tipo de projeto considerado sem janelas e no conter uma classe de
formulrios Windows. Para mais informaes, consulte Classes de componentes.

Modelo de
Aplicao de
console

Aplicativo de linha de comando.

Modelo do Projeto Um projeto vazio. O modelo cria a estrutura de arquivo necessrio para armazenar
vazio
informaes de aplicativo; quaisquer referncias, arquivos, ou componentes devem
ser adicionados manualmente.
Modelo de
Biblioteca de
controle da Web

Controle personalizado que pode ser usado em pginas de formuliros Web.


Observao Visual Basic
Esse tipo de projeto parecido com o projeto ActiveX Control no Visual Basic
6.0.

Modelo de
aplicativos do
Windows

Aplicativo Windows autnomos tradicional ou um rico front-end para aplicativo


Web distribudo. Para mais informaes, consulte Criando aplicativos Windows.
Observao Visual Basic
Isso substitui o modelo de projeto Standard EXE no Visual Basic 6.0.

Modelo de
Biblioteca de
controle do
Windows

Controle personalizado para usar em formulrios Windows. Para mais informaes,


consulte Controle de criao de formulrios do Windows.

Modelo de servio
do Windows

Interface de aplicativos que executam por muito tempo e no tm uma interface de


usurio. Windows Service Applications (anteriormente chamadas " NT services")
podem monitorar itens como o desempenho do sistema. Para mais informaes,
consulte Introduo aos aplicativos de servio do Windows.

COMO: Restaurao de modelos de projeto padro


Se voc acidentalmente excluir os modelos de projeto padro que so includos com
o Visual Studio, voc pode usar este procedimento para restaur-los sem reinstalar
o Visual Studio.

Visual Studio

311

Para restaurar os modelos de projeto padro

1.

2.

Na linha de comando, navegue para a localidade onde est o devenv.exe.


Este arquivo est localizado em <Visual Studio Installation
Path>\Common7\IDE.
Digite "devenv /installvstemplates" e pressione ENTER.
Observao
Se voc estiver usando um Visual Studio Express Edition, digite "<ExpressName>Express
/installvstemplates", onde <ExpressName> VJS, VB ou VCS para Visual J#, Visual Basic e Visual
C#, respectivamente.

3.

Se esse procedimento no restaurar os modelos padro, reinstale o Visual


Studio.

Modelo Class Library


Voc pode usar o modelo Class Library para criar rapidamente, classes e
componentes reutilizveis que podem ser compartilhados com outros projetos. Para
obter mais informaes sobre como criar classes de componentes, consulte
Component Classes.
O modelo adiciona automaticamente arquivos e referncias ao projeto essencial.

Modelo de aplicativo de console


O modelo de projeto Console Application adiciona os itens necessrios para criar
um aplicativo de console. Aplicativos de console so normalmente criados sem uma
interface grfica do usurio e so compilados em um arquivo executvel autnomo.
Um aplicativo de console executado a partir da linha de comando com
informaes de entrada e sada sendo trocadas entre o prompt de comando e o
aplicativo em execuo. As informaes podem ser escritas e lidas da janela do
console, tornando o aplicativo de console uma excelente maneira para se aprender
novas tcnicas de programao sem precisar se preocupar com a interface do
usurio.
O modelo adiciona automaticamente as referncias de projeto essenciais e arquivos
para serem usados como um ponto de partida para o seu aplicativo.

Modelo Empty Project


O modelo Empty Project pode ser usado quando voc desejar criar seu prprio tipo
de projeto. O modelo cria a estrutura de arquivos necessria para armazenar as
informaes do aplicativo. As referncias, arquivos ou componentes devem ser
adicionados manualmente. Para obter mais informaes sobre como adicionar
referncias, consulte Adicionando e removendo referncias.

Visual Studio

312

Modelo de biblioteca de controles da Web


Voc pode usar o modelo de projeto Web Control Library para criar controles de
servidor Web personalizados. O modelo adiciona os itens de projeto necessrios
para comear a criar um controle que pode ser adicionado a qualquer projeto da
Web. Para mais informaes, consulte Viso geral de controles de servidor Web do
ASP.NET.
O modelo adiciona automaticamente as referncias de projeto essenciais e arquivos
para serem usados como um ponto de partida para seu aplicativo.

Modelo de Aplicativo Windows


O modelo de projeto do Aplicativo Windows em Visual Basic, Visual C# e Visual J#
representa a base para um aplicativo Windows padro. Para obter mais informaes
sobre como criar um aplicativo Windows, consulte Criando um Projeto de Aplicativo
Windows.
O modelo adiciona automaticamente as referncias e arquivos essenciais do projeto
para usar como ponto de partida para o seu aplicativo.

Modelo de Controle de Biblioteca do Windows


O modelo do projeto de controle de Biblioteca do Windows usado para criar
controles personalizados para usar em formulrios Windows. Para mais
informaes, consulte Controles de formulrios do Windows.
O modelo automaticamente adiciona as referncias essenciais e arquivos do projeto
para usar como um ponto de partida para seu aplicativo.

Modelo de Servio do Windows


O modelo de servio do Windows adiciona os itens necessrios para criar um
aplicativo de servio do Windows, um aplicativo executvel demorado que
executa em sua prpria sesso do Windows. Para mais informaes, consulte
Introduo aos aplicativos de servio do Windows.
O modelo adiciona automaticamente as referncias e arquivos essenciais para o
projeto usar como um ponto de partida para seu aplicativo.

Referenciando Namespaces e Componentes


Referncias de projeto so usadas para acessar as propriedades, os mtodos e os
eventos de um objeto definido e aplic-los em seu programa. Os tpicos a seguir
contm uma viso geral das referncias no Visual Basic e Visual C# e fornecem
instrues sobre como adicionar, remover e gerenciar as referncias existentes.

Visual Studio

313

Referncias de projeto
Para escrever cdigo contra um componente externo, seu projeto deve
primeiramente conter uma referncia a ele. Uma referncia pode ser feita aos
seguintes tipos de componentes:

Bibliotecas de classes do .NET Framework ou assemblies

Componentes COM

Outras bibliotecas de classes de projetos na mesma soluo

XML Web Services

Para obter mais informaes sobre referncias de XML Web Services, consulte
Referncias da Web.
Observao do Visual Basic
Referncias de projeto so gerenciadas de modo diferente no Visual Studio do que como eram no Visual
Basic 6.0. Para mais informaes, consulte Gerenciamento de projeto para usurios do Visual Basic 6.0.
Referncias a componentes compartilhados

Em tempo de execuo, componentes devem estar em um dos dois locais: no


caminho de sada do projeto ou no cache global de assemblies (GAC). Se o projeto
contiver uma referncia a um objeto que no esteja em um desses locais, a
referncia deve ser copiada para o caminho de sada do projeto quando o projeto
criado. A propriedade CopyLocal indica se esta cpia precisa ser feita. Se o valor for
true, a referncia copiada. Se false, a referncia no copiada.
Se voc implantar um aplicativo que contm uma referncia a um componente
personalizado que est registrado no GAC, o componente no ser implantado com
o aplicativo, independentemente da configurao CopyLocal. Em verses
anteriores do Visual Studio, voc poderia definir a propriedade CopyLocal em uma
referncia para garantir que o assembly fosse implantado. Agora, voc deve
adicionar manualmente o assembly pasta \Bin. Isso coloca todo cdigo
personalizado sob exame detalhado, reduzindo o risco de publicar cdigo
personalizado com o qual voc no est familiarizado.
Por padro, a propriedade CopyLocal est definida como false se o assembly ou
componente est no cache global de assemblies ou um componente de estrutura.
Caso contrrio, o valor definido como true. Referncias de projeto-a-projeto so
sempre definidas como true.
Referncias de projeto-a-projeto

Em uma soluo com vrios projetos, voc pode criar referncias a objetos criados
em outro projeto que reside na mesma soluo. Isso cria uma interdependncia
que requer uma considerao especial ao criar e executar o aplicativo. Para mais
informaes, consulte Como: preparar e gerenciar Builds.

Solucionando problemas de referncias quebradas


Se seu aplicativo tentar usar uma referncia quebrada, um erro de exceo
gerado. A incapacidade de localizar o componente referenciado o disparador

Visual Studio

314

primrio do erro, mas existem vrias situaes em que uma referncia pode ser
considerada quebrada. Essas instncias so mostradas na lista a seguir:

O caminho de referncia do projeto est incorreto ou incompleto.

O arquivo sendo referenciado foi excludo.

O arquivo sendo referenciado foi renomeado.

A conexo de rede ou a autenticao falhou.

A referncia a um componente COM que no est instalado no computador.

A seguir esto solues para esses problemas.


Observao
Arquivos em assemblies so referenciados com caminhos absolutos no arquivo de projeto. Devido a isso,
possvel que usurios trabalhando em um ambiente com vrios desenvolvedores sintam a falta de um
assembly referenciado no seu ambiente local. Para evitar esses erros, melhor nesses casos adicionar
referncias de projeto-a-projeto. Para obter mais informaes, consulte Como: adicionar ou remover
referncias no Visual Studio e Programando com assemblies.
Caminho de referncia est incorreto
Se projetos so compartilhados em computadores diferentes, algumas referncias
podem no ser encontradas quando um componente est localizado em um
diretrio diferente em cada computador. Referncias so armazenadas sob o nome
do arquivo de componente (por exemplo, MeuComponente). Quando uma
referncia adicionada a um projeto, o local da pasta do arquivo de componente
(por exemplo, C:\MeusComponentes\) ser acrescentado propriedade de projeto
ReferencePath.
Quando o projeto aberto, ele tenta localizar esses arquivos de componentes
referenciados procurando nos diretrios no caminho de referncia. Se o projeto for
aberto em um computador que armazena o componente em um diretrio diferente,
como D:\MeusComponentes\, a referncia no poder ser encontrada e um erro
aparecer na Lista de Tarefas.
Para corrigir este problema, voc pode excluir a referncia quebrada e substitu-la
usando a caixa de dilogo Add Reference. Uma outra soluo usar o item
Reference Path em pginas de propriedades do projeto e modificar as pastas na
lista para apontar para os locais correto. A propriedade ReferencePath mantida
para cada usurio em cada computador, assim modificar o seu caminho de
referncia no afeta outros usurios do projeto.
Dica
Referncias de projeto-a-projeto no tm esses problemas. Por esse motivo, use-as em vez de referncias
de arquivo, se possvel.
Para consertar uma referncia de projeto quebrada corrigindo o caminho de referncia
1.
2.

No Solution Explorer, clique com o boto direito do mouse no n do seu


projeto e clique em Properties.
O Project Designer aparecer.

Visual Studio

315

3.

Se voc estiver usando o Visual Basic, selecione a pgina References e


clique no boto Reference Paths. Na caixa de dilogo Reference Paths,
digite o caminho da pasta que contm o item que voc deseja referenciar no
campo Folder, depois clique no boto Add Folder.
Se voc estiver usando o Visual C#, selecione a pgina Reference Paths. No
campo Folder, digite o caminho da pasta que contm o item que voc deseja
refernciar, e depois clique no boto Add Folder.

Arquivo referenciado foi excludo


possvel que o arquivo sendo referenciado tenha sido excludo e no exista mais
na unidade.
Para corrigir uma referncia de projeto quebrada a um arquivo que no existe mais no
seu disco

Excluir a referncia.

Se a referncia existir em outro local no seu computador, leia-a deste local.

Para mais informaes, consulte Como: adicionar ou remover referncias no


Visual Studio.
Arquivo referenciado foi renomeado

possvel que o arquivo referenciado tenha sido renomeado.


Para corrigir uma referncia quebrada a um arquivo que foi renomeado

Exclua a referncia, e depois adicione uma referncia ao arquivo renomeado.


Se a referncia existir em outra local no seu computador, voc precisa l-lo
daquele local. Para mais informaes, consulte Como: adicionar ou remover
referncias no Visual Studio.
Conexo de rede ou autenticao falhou

Pode haver vrias causas possveis para arquivos inacessveis: uma conexo de
rede ou uma autenticao que falhou, por exemplo. Cada causa pode ter meios
exclusivos de recuperao; por exemplo, voc pode precisar entrar em contato com
o seu administrador local para obter acesso aos recursos necessrios. No entanto,
excluir a referncia e corrigir o cdigo que a usa sempre uma opo. Para mais
informaes, consulte Como: adicionar ou remover referncias no Visual Studio.
Componente COM no est instalado no computador
Se um usurio tiver adicionado uma referncia a um componente COM e um
segundo usurio tentar executar o cdigo em um computador que no tenha este
componente instalado, o segundo usurio receber um erro de que a referncia
est quebrada. Instalar o componente no segundo computador ir corrigir o erro.
Para obter mais informaes sobre como usar referncias a componentes COM em
seus projetos, consulte Interoperabilidade COM em aplicativos .NET Framework.

Convenes de nomenclatura para arquivo de recurso


Esta seo descreve as convenes de nomeao para recursos manifesto de
assembly em projetos do Visual Basic e Visual C#.

Visual Studio

316

Recursos XML
Um arquivo de recursos XML um arquivo cuja extenso .resx e cuja propriedade
BuildAction est definida como Embedded Resource. Esses arquivos XML devem
seguir um esquema especfico compreendido pela ferramenta de converso
ResXToResources. Com esta ferramenta, arquivos de recursos XML so
transformados em BLOBs antes da incluso no manifesto do assembly.
A seguir, a conveno de nomeao de arquivo para esses recursos:
nomearquivo_base[.string info cultura opcional RFC 1766].resx
Alm das limitaes do sistema de arquivos, no h restries sobre
base_filename ou a string info cultura opcional RFC 1766. Exemplos de
nomes de arquivo de recursos XML vlidos incluem:

MyResource.resx

MyResource.de-de.resx

My.Resource.File.resx

Recursos no-XML
Um arquivo de recursos no-XML qualquer arquivo cuja propriedade BuildAction
EmbeddedResource e cuja extenso algo diferente de .resx. Todos esses
arquivos de recursos seguem a mesma conveno de nome, independentemente se
eles so arquivos dependentes.
A nomeao para esses arquivos a seguinte:
base_filename+[.optional RFC 1766 culture info string].extension
Alm das limitaes do sistema de arquivos, no existem restries em
base_filename, optional RFC 1766 culture info string, ou extension.

Configurando aplicativos usando propriedades dinmicas


Observao
A interface de usurio para propriedades dinmicas foi removida do Visual Studio 2005. As propriedades
dinmicas no entanto, ainda so suportadas. Se voc importar um projeto de uma verso anterior do
Visual Studio, as configuraes de propriedades dinmicas sero preservadas no cdigo e funcionaro em
tempo de execuo. recomendvel que voc em vez disso use o Project Designer para especificar
configuraes de aplicativo. Para obter mais informaes, consulte Pgina de configuraes, designer de
projeto e Gerenciando definies de aplicativo.
Com propriedades dinmicas voc pode armazenar alguns dos valores de
propriedade do aplicativo em um arquivo externo e carreg-los quando o aplicativo
executado. Isso permite a voc fazer alteraes nos valores de propriedade sem
recompilar o aplicativo, aps o projeto ter sido implantado.

Introduo a propriedades dinmicas (Visual Studio)


Observao

Visual Studio

317

A interface do usurio para propriedades dinmicas foi removida do Visual Studio 2005. Porm
propriedades dinmicas ainda recebem suporte. Se voc importar um projeto de uma verso anterior do
Visual Studio, as configuraes de propriedades dinmicas sero preservadas no cdigo e iro funcionar
em tempo de execuo. recomendvel que voc em vez disso use o Project Designer para especificar
configuraes de aplicativo. Para obter mais informaes, consulte Pgina de configuraes, Project
Designer e Gerenciando configuraes de aplicativo.
Propriedades dinmicas permitem que voc configure seu aplicativo de maneira que
alguns ou todos os seus valores de propriedades sejam armazenados em um
arquivo de configurao externo em vez de ser armazenados no cdigo compilado
do aplicativo. Ao fornecer aos administradores os meios para atualizar valores de
propriedades que podem precisar ser alterados ao longo do tempo, isto pode
reduzir o custo total de se manter um aplicativo aps ele ter sido implantado. Por
exemplo, suponha que voc esteja criando um aplicativo que usa um banco de
dados de teste durante o processo de desenvolvimento, e voc precise altern-lo
para um banco de dados de produo ao implant-lo. Se voc armazenar os valores
de propriedades dentro do aplicativo, voc tem que alterar todas as configuraes
de banco de dados manualmente antes de implantar, e depois recompilar o cdigo
fonte. Se voc armazenar esses valores externamente, voc pode fazer uma nica
alterao no arquivo externo e o aplicativo ir pegar os novos valores na prxima
vez em que ele for executado.
Observao de segurana
Valores de propriedades armazenados em um arquivo de configurao no so seguros. Dados
confidenciais como senhas e informaes de carto de crdito no devem ser armazenados como
propriedades dinmicas.
Voc pode usar propriedades dinmicas em qualquer aplicativo que seja compilado
em um arquivo .exe. Projetos que compilam uma DLL no podem usar
propriedades dinmicas diretamente; entretanto propriedades de DLL podem ser
definidas dinamicamente pelo .exe que est referenciando o arquivo .dll. Embora as
propriedades de qualquer componente, formulrio ou controle nestes aplicativos
possam ser tratadas dinamicamente, algumas propriedades so melhores
candidatas a propriedade dinmica que outras. Freqntemente, voc ir
armazenar e recuperar propriedades que se conectam a recursos externos que
podem se alterar, incluindo bancos de dados, logs de eventos, ou contadores de
desempenho. Muitas dessas propriedades so identificadas como candidatas padro
a propriedade dinmica.
Observao
O cdigo de exemplo neste tpico depende da existncia de um objeto SqlConnection e um arquivo de
configurao; ele causar erros de compilao sem eles. Para obter mais informaes como criar um
arquivo de configurao, consulte Explicao passo a passo: armazenando e recuperando propriedades
dinmicas.
Propriedades dinmicas e arquivos de configurao

Ao definir uma propriedade como configurvel, o seu valor gravado em um


arquivo de configurao e cdigo inserido na classe para indicar que o valor da
propriedade deve ser recuperado a partir deste recurso externo. O arquivo de

Visual Studio

318

configurao varia de acordo com o tipo de aplicativo; aplicativos baseados na Web


usam o arquivo Web.config, e aplicativos baseados no Windows usam um arquivo
semelhante com extenso .config. Todos os formulrios e componentes em um
aplicativo usam um nico arquivo de configurao. Voc no pode alternar para um
arquivo de configurao diferente ou usar vrios arquivos dentro de um nico
aplicativo.
Dentro do arquivo de configurao, as propriedades so mantidas usando XML. Por
exemplo, suponha que voc indicou que a propriedade ConnectionString para uma
conexo de dados deve ser armazenada no arquivo de configurao. Voc poder
ver este cdigo no editor de cdigo, indicando que o valor armazenado
externamente:
C#
this.sqlConnection1.ConnectionString =
System.Configuration.ConfigurationManager.
AppSettings.Get("SqlConnection1.ConnectionString");

Observao de segurana
Para obter mais informaes sobre como criar conexes de dados seguras, consulte Tornando seguras
seqncias de conexo.
No arquivo de configurao, o valor dessa propriedade seria armazenado via XML,
usando a chave indicada no cdigo do formulrio:
<configuration>
<appSettings>
<add key="sqlConnection1.ConnectionString" value="data
source=myserver;initial catalog=Apps;Integrated Security=SSPI;packet
size=4096" />
</appSettings>
</configuration>

Para cada valor no arquivo de configurao atribuda uma chave que usada para
armazenar e recuperar o valor. A parte inicial da chave indica o componente do
qual originou-se o valor. Por exemplo, essas duas chaves indicam uma propriedade
ConnectionString de duas conexes de dados dentro de um nico aplicativo:
<configuration>
<appSettings>
<add key="sqlConnection1.ConnectionString" value="data
source=myserver;initial catalog=Apps;Integrated Security=SSPI;packet
size=4096" />
<add key="sqlConnection2.ConnectionString" value="data
source=myserver;initial catalog=Apps;Integrated Security=SSPI;packet
size=4096" />
</appSettings>
</configuration>

Voc pode modificar o arquivo de configurao diretamente de maneira a atualizar


dinamicamente os valores de propriedades em seu aplicativo. Na prxima vez em
que o aplicativo for iniciado, ele ir atualizar os valores.
De uma certa maneira, arquivos de configurao so semelhantes a arquivos de
recurso; ambos so usados para armazenar valores fora do aplicativo compilado e
ambos usam XML para armazenar suas informaes. No entanto, arquivos de

Visual Studio

319

recurso servem para uma finalidade totalmente diferente do que arquivos de


configurao. Arquivos de recurso so usados para armazenar seqncias e outros
recursos localizveis para fins de traduo, enquanto arquivos de configurao (no
caso de propriedades dinmicas) so usados para atualizar valores de
propriedades. Os valores em um arquivo de recurso so destinados a serem
traduzidos, mas tipicamente no so alterados, enquanto valores de propriedades
dinmicas em um arquivo de configurao podem ser alterados conforme
necessrio. Alm disso, voc pode associar vrios arquivos de recurso a um
projeto, mas voc s pode ter um nico arquivo de configurao para o aplicativo.
Para obter mais informaes sobre arquivos de recurso, consulte Organizao
hierrquica de recursos para localizao.
Definindo propriedades mltiplas para a mesma chave

Propriedades mltiplas podem referenciar o mesmo par chave-valor em um arquivo


de configurao. Por exemplo, se voc tiver trs componentes em sua classe que
acessem o mesmo banco de dados, voc pode armazenar a propriedade
ConnectionString para cada um no mesmo par chave-valor. Isso significa que se
o banco de dados for alterado, voc pode atualizar um nico valor no arquivo de
configurao para aplicar a alterao a todos os trs componentes. Voc faria isso
definindo cada uma das propriedades como a mesma chave, assim:
C#
this.sqlConnection1.ConnectionString =
System.Configuration.ConfigurationManager.
AppSettings.Get("SqlConnection1.ConnectionString");
this.sqlConnection2.ConnectionString =
System.Configuration.ConfigurationManager.
AppSettings.Get("SqlConnection1.ConnectionString");
this.sqlConnection3.ConnectionString =
System.Configuration.ConfigurationManager.
AppSettings.Get("SqlConnection1.ConnectionString");

Observe que, enquanto os componentes em uso diferem, todos eles referem-se


chave para sqlConnection1.ConnectionString.
Quando voc escolhe a mesma chave para propriedades mltiplas, somente uma
entrada feita no arquivo de configurao. O valor inicial armazenado o mesmo
da primeira propriedade para a qual foi fornecida essa chave.
Tipos de dados e propriedades dinmicas

XML armazena tudo como uma seqncia de caracteres. Se o valor da propriedade


que voc est armazenando no uma seqncia de caracteres, voc ir ver
informaes adicionais no editor de cdigo para indicar o tipo de dado para o valor
da propriedade. Por exemplo, suponha que voc esteja armazenando
dinamicamente o valor das propriedades Interval e Enabled de um componente
Timer. No arquivo de configurao, essa propriedade seria armazenada assim:
<appSettings>
<add key=timer1.Interval" value="100" />
<add key=timer1.Enabled" value="True" />
</appSettings>

No editor de cdigo, voc dever ver este cdigo para indicar que o valor
recuperado precisa ser alterado para um Tipo de dados Double (Visual Basic):
C#

Visual Studio

320

this.timer1.Enabled = (bool)(new System.Configuration.


AppSettingsReader().GetValue("timer1.Enabled", typeof(bool)));
this.timer1.Interval = (System.Double)(new System.Configuration.
AppSettingsReader().GetValue("timer1.Interval", typeof(System.Double)));

Observao
Existem dois timers, um para Windows Forms e outro para aplicativos baseados em servidor, com
pequenas diferenas nos modelos de programao. Este exemplo usa o timer baseado em servidor. Para
obter mais informaes sobre os dois timers disponveis, consulte Introduo a timers baseados em
servidor.
Preocupaes de desempenho e segurana com propriedades dinmicas

H dois itens que podem ser preocupantes quando voc usa propriedades
dinmicas. Primeiro, armazenamento e recuperao de propriedades dinmicas
podem afetar um pouco o desempenho do aplicativo. Recuperar valores de
propriedades de dentro do aplicativo compilado ligeiramente mais rpido do que
recuperar valores de propriedades do arquivo de configurao. Na primeira vez em
que um valor de arquivo de configurao acessado pelo aplicativo, haver um
leve impacto no desempenho quando o aplicativo ler o arquivo. Porm este impacto
muito pequeno e no deve ser notado. Qualquer recuperao subseqente desta
ou outra propriedade tem um impacto no desempenho muito menor semelhante
a ler um valor de uma tabela de hash.
Segundo, se voc estiver armazenando valores de propriedades tais como
identificaes dos usurios e senhas em um arquivo externo, voc desejar
controlar quem tem acesso ao arquivo e aos valores que ele contm. Uma maneira
de se fazer isso proteger o arquivo com uma lista de controle de acesso (ACL) do
Windows. Uma lista de controle de acesso especifica que operaes diferentes
usurios podem executar em arquivos e diretrios especficos. Alm disso, se voc
estiver trabalhando com um aplicativo baseado na Web, voc pode tirar proveito da
opo de segurana integrada fornecida pelo Windows, Servios de Informaes da
Internet (IIS), e SQL Server. Neste modelo, credenciais de autenticao de um
usurio para a rede local tambm so usadas para acessar recursos de banco de
dados, e nenhum nome de usurio ou senha explcitos so usados na seqncia de
conexo.
Para obter mais informaes sobre segurana, consulte a documentao do
Windows ou as seguintes pginas:

Segurana de aplicativos da Web do ASP.NET

Viso geral sobre como conectar-se a dados no Visual Studio

Visual Studio

321

Visual Studio

322

Personalizar e automatizar o ambiente


de desenvolvimento
O local para aspecto para obter informaes sobre como criar Add-ins, personalizar
a aparncia e comportamento do (IDE), ambiente de desenvolvimento integrado e
tpicos de referncia.
Nesta seo
Personalizar o ambiente de desenvolvimento
Informaes sobre como personalizar a janela da Ajuda dinmica e barras de
ferramentas, iniciar outros aplicativos de dentro do IDE, exportar e importar
configuraes, e fazer outras personalizaes em IDE para convenincia e
produtividade.
Gerenciamento de janela
Informaes sobre como entrar reorganizar janelas ferramenta e documentos
no IDE.
Automao e extensibilidade para Visual Studio
Informaes sobre como criar macros e suplementos.
Sees relacionadas
Recursos de acessibilidade do Visual Studio
Informaes sobre como otimizar layouts janela, alterar a fonte e cor do
texto, e outras formas para personalizar o IDE.

Personalizar o ambiente de desenvolvimento


Voc pode alterar a aparncia e comportamento do ambiente de desenvolvimento
integrado do Visual Studio (IDE) de vrias maneiras. O Visual Studio inclui vrias
combinaes configuraes predefinidas que voc pode usar para aplicar um grupo
de personalizaes a IDE. Alm disso, voc pode Certifique individuais
personalizao a itens como janelas, barras de ferramentas, teclas de atalho, e
vrias opes exibe.
Nesta seo
Como: Personalizar Ajuda dinmica
Instrues para reduzir o tipo de tpicos e categorias que aparecem na
janela da Ajuda dinmica.
Personalizar barras de ferramentas
Instrues para adicionar e personalizar a aparncia de barras de
ferramentas.
Como iniciar ferramentas no Visual Studio:
Instrues para adicionar um comando no menu Ferramentas para iniciar
aplicativos externos para o Visual Studio de no Visual Studio.
Como personalizar a seo de notcias da pgina Iniciar:
Instrues para especificar um RSS personalizado alimentao para a pgina
inicial.

Visual Studio

323

Como alterar o item exibido em Iniciar Backup do ambiente de desenvolvimento


do:
Instrues para especificar que uma caixa de dilogo especfico, pgina, ou
ambiente vazia exibida quando voc inicia o IDE.
Trabalhando com configuraes
Informaes sobre como configuraes funcionam no IDE, importar e
exportar configuraes, e alterar basear configuraes.
Sees relacionadas
Recursos de acessibilidade do Visual Studio
Informaes sobre como criar atalho combinaes de teclas, otimizar layouts
janela, altere a fonte e cor do texto, e outras formas para personalizar o IDE.
Personalizar recursos e opes do Editor
Detalhes para alterar a aparncia do Editor, o texto, ele exibe e informaes
sobre como criar atalhos Editor.
Especificando configuraes do depurador
Como usar e depurao. e Project Settings caixas de dilogo para alterar
vrias configuraes para o depurador a Options
Criando e editando configuraes
Procedimentos para especificar uma variedade de criar configuraes para
seu esforo de desenvolvimento.
Consulte tambm
Outros recursos
Personalizar e automatizar o ambiente de desenvolvimento

Visual Studio

Como: Personalizar Ajuda dinmica


Voc pode alterar o nmero e tipo de links que aparecem na janela da Ajuda
dinmica para tornar mais fcil para localizar informaes A janela da Ajuda
dinmica fornece links para informaes encontradas na Ajuda local com base em
parte da (IDE) o ambiente de desenvolvimento integrado que atualmente tem foco.
Normalmente, os links que aparecem esto relacionados s voc est tentando se
realizar a tarefa atual ou a parte atual de IDE que voc est usando. Os tpicos
mais provvel para ser til para voc esto listados primeiro.
Observao
Ajuda filtros no afetam a janela da Ajuda dinmica. A janela da Ajuda dinmica filtros automaticamente
tpicos com base em suas aes no IDE. Alm disso, a janela da Ajuda dinmica no exibe links para
informaes encontradas em MSDN Online ou em sites da Web comunidade Codezone; ele s exibe links
para tpicos encontrados na Ajuda local.
Por exemplo, voc pode:

Adicionar ou remover categorias tpico, ou vincular grupos.

Visual Studio

324

Classificar categorias tpico.

Adicionar ou remover tipos tpico.

Especificar o contexto que a janela da Ajuda dinmica usa para exibir links.

Alterar o nmero de links exibidos para cada categoria tpico.


Observao

As opes disponveis nas caixas de dilogo e os nomes e locais dos comandos de menu que voc v
podem diferir do que descrito na Ajuda, dependendo de suas configuraes ativas ou da edio. Esta
pgina Ajuda foi gravada com General Development Settings em mente. Para alterar as configuraes,
escolha Import and Export Settings No menu Tools. Para obter mais informaes, consulte
Configuraes do Visual Studio.
Exibir a janela da Ajuda dinmico
Para exibir a janela da Ajuda dinmico
1.

No menu View, escolha Other Windows e escolha Command Window.

2.

Digite Help.DynamicHelp e pressione ENTER.


ou
No menu Help, escolha Dynamic Help.

Personalizar categorias tpico


Voc pode adicionar ou remover categorias tpico, como Miscelnea, treinamento e
da janela da Ajuda dinmico Categorias sero exibidas somente se no h tpicos
que correspondem categoria e o contexto IDE atual. As categorias includas no
conjunto documentao padro so ajuda, exemplos, e Guia de Introduo.
Para adicionar ou remover categorias tpico
1.

No menu Tools, escolha Options.

2.

Na caixa Options de dilogo, escolha Environment.

3.

Em Environment, escolha Help e escolha Dynamic Help.

4.
5.

Na lista Categories, marque ou desmarque as categorias que esto listadas


para adicionar ou remov-los da janela da Ajuda dinmica.
Escolha OK.

Voc pode alterar a ordem na qual as categorias aparecem na janela da Ajuda


dinmico
Para classificar categorias tpico
1.

No menu Tools, escolha Options.

2.

Na caixa Options de dilogo, escolha Environment.

3.

Em Environment, escolha Help e escolha Dynamic Help.

4.

Na lista Categories, selecione a categoria voc pretende mover e escolha


Move Up ou Move Down.
Descries da categoria:
Actions

Lista Links para assistentes, macros, comandos, e outras ferramentas para serem
iniciados quando voc seleciona o link.

Visual Studio

325

Training

Lista links para tpicos do Microsoft (MSDN) treinamento conjunto documentao


Developer Network.

Help

Lista links para tpicos de conjuntos documentao dos msdn.

Samples

Links para tpicos que demonstram o uso de tecnologias .NET.

Getting
Started

Lista links para tpicos que foram projetados para ajud-lo rapidamente tornar
produtivos usando o Visual Studio.

Miscellaneous

Lista links para tpicos que no cabem em uma das categorias acima.

Alm disso, voc pode especificar o nmero total de links que so exibidos em cada
categoria. Os links so exibidos de acordo com relevncia ponderada Os tpicos
mais provvel para ser til para voc so listados primeiro, para se voc limitar o
nmero de links exibida, voc ainda deve obter os tpicos mais relevantes. Voc
pode exibir mais links se voc quiser ser capaz de examine rapidamente um
nmero maior de tpicos relacionados ao seu trabalho ou se seu posicionamento
resoluo e janela da tela permite que voc se Consulte mais links ao mesmo
tempo.
Para alterar o nmero de links exibidos para cada categoria tpico
1.

No menu Tools, escolha Options.

2.

Na caixa de dilogo Opes, escolha Environment.

3.

Em Environment, escolha Help e escolha Dynamic Help.

4.

Marque a Limit number of links per category caixa de seleo e insira um


nmero na caixa de texto adjacentes.

Personalizar tipos tpico exibidos


Em Categorias, voc pode incluir ou excluir vrios tipos diferentes tpico, tais como
artigo e orientao. Por exemplo, se voc deseja ver apenas links para tpicos de
referncia de idioma no janela da Ajuda dinmico, excluir todos os tipos exceto
sintaxe.
Para incluir ou excluir tipos tpico
1.

No menu Tools, escolha Options.

2.

Na caixa Options de dilogo, escolha Environment.

3.

Em Environment, escolha Help e escolha Dynamic Help.

4.

Na lista, selecione ou Topic types desmarque os tipos listados para incluir


ou exclui-los dos vnculos exibidos na janela da Ajuda dinmica.
Descries tipo tpico:
Article

Fornece informaes detalhadas sobre conceituais entidades incluindo: vises gerais


conceito, backgrounders tcnicos, informes oficiais, e as prticas recomendadas..

Procedure

Instrues passo a orientao para realizar tarefas especficas.

Visual Studio

326

Orientation Resumos que ajudam a localizar a ajuda necessria na documentao Visual Studio.
Reference

Informaes sobre elementos syntactical no-, inclusive guias para elementos da interface
do usurio, Ajuda sobre mensagens de erro, e tpicos do glossrio.

Sample

E / descries de exemplos, muitos dos que contm arquivos de cdigo de fonte completa,
voc pode compilar criar, ou executar.

Syntax

Descries dos elementos sintticos incluindo objetos, mtodos, eventos, propriedades,


funes, instrues, e expresses.

Especificar o contexto usado para determinar os tpicos para incluir


Voc tambm pode especificar o contexto de IDE que a janela da Ajuda dinmica
usa para determinar o escopo dos tpicos para exibir Esta opo pode limitar o
nmero de tpicos exibidos.
Para especificar o tipo de contexto IDE para usar
1.

No menu Tools, escolha Options.

2.

Na caixa Options de dilogo, escolha Environment.

3.

Em Environment, escolha Help e escolha Dynamic Help.

4.

Na Show links for, selecione o contexto voc deseja a janela da Ajuda


dinmica exibir tpicos para.
Descries contexto:
Selection only

Limita a lista para tpicos associados com o elemento de interface do usurio que est
selecionado no momento.

Active UI
elements

Limita a lista para tpicos associados com qualquer elemento de interface do usurio
que est aberto.

Show all links

Exibe os tpicos que podem ser associados com o estado atual de IDE.

Consulte tambm
Visual Studio

Como personalizar barras de ferramentas Visual Studio ():


Voc pode alterar o layout, Posio, e contedo de barras de ferramentas no
ambiente de desenvolvimento integrado (IDE) Voc tambm pode adicionar botes
a barras de ferramentas e alterar o cone atribudo de qualquer boto.
Criar novas barras de ferramentas
Para criar uma nova barra de ferramentas
1.

No menu Tools, escolha Customize.

2.

Na caixa Customize de dilogo, selecione a Toolbars guia.

3.

Escolha New.

4.

Na caixa New Toolbar de dilogo, digite um nome para a barra de


ferramentas

Visual Studio

327

5.

Escolha OK.

Para adicionar um boto de comando a uma barra de ferramentas


1.

No menu Tools , escolha Customize.

2.

Na caixa Customize de dilogo, selecione a Commands guia.

3.

Clique em Rearrange Commands.

4.
5.
6.

Em Choose a menu or toolbar to rearrange, selecione Toolbar e escolha


Barra de Ferramentas correta na lista drop-down.
Clique em Add.
Na caixa Add Command de dilogo, selecione Nome de Categoria da lista
Categories e depois escolha um comando apropriado na lista Commands.

7.

Clique em OK.

8.

Clique Close em Close novamente.

Personalizar imagens de boto de ferramentas


O IDE fornece forty-duas imagens de boto que podem ser trocadas com os cones
da barra de ferramentas Padro.
Para alterar imagens de boto de ferramentas
1.

No menu Tools, escolha Customize.

2.

Na caixa Customize de dilogo, selecione a Commands guia.

3.

Clique em Rearrange Commands.

4.

Em Choose a menu or toolbar to rearrange, selecione Toolbar e escolha


Barra de Ferramentas correta na lista drop-down.

5.

Selecione o comando de ferramentas do qual voc pretende alterar a


imagem.

6.
7.

Escolha Modify Selection.


Escolha Change Button Image e selecione uma alternativa no menu em
cascata.
Dica
Se voc estiver unsatisfied com as imagens alternativas fornecidas, voc pode personalizar uma imagem
de sistema selecionada

Para editar imagens de boto


1.

No menu Tools, escolha Customize.

2.

Na caixa Customize de dilogo, selecione a Commands guia.

3.

Clique em Rearrange Commands.

4.

Em Choose a menu or toolbar to rearrange, selecione Toolbar e escolha


Barra de Ferramentas correta na lista drop-down.

5.

Selecione o comando de ferramentas do qual voc pretende alterar a


imagem.

6.

Escolha Modify Selection.

7.

Escolha Edit Button Image.

Visual Studio

328

8.

Use a Button Editor caixa de dilogo para personalizar imagem do boto


selecionado.
Observao
A Customize caixa dilogo pode ser usada para personalizar menus, assim.

Para obter mais informaes sobre como aprimorar a usabilidade e acessibilidade


de barras de ferramentas, Como definir opes de acessibilidade: consulte.
Consulte tambm
Visual Studio

Como iniciar ferramentas no Visual Studio:


Voc pode adicionar itens para o menu Ferramentas que permitem a voc para
iniciar ferramentas externas a partir do Visual Studio. Por exemplo, voc pode
adicionar um item para o menu Ferramentas para iniciar utilitrios, como exibir OLE
ou WinDiff.
Observao
As opes disponveis nas caixas de dilogo e os nomes e locais dos comandos de menu que voc v
podem diferir do que descrito na Ajuda, dependendo de suas configuraes ativas ou da edio. Esta
pgina Ajuda foi gravada com General Development Settings em mente. Para alterar as configuraes,
escolha Import and Export Settings No menu Tools. Para obter mais informaes, consulte
Configuraes do Visual Studio.
Para saber mais sobre

Consulte

Fornecendo acoplamentos de teclas e teclas de acelerao


para ferramentas externas

Adicionando chaves Accelerator e


vinculao de chaves

Argumentos predefinidos para ferramentas externas

Argumentos para ferramentas externos

Adicionar uma ferramenta externa ao menu Ferramentas


Voc pode adicionar um comando para o menu Ferramentas para iniciar outro
aplicativo, como o Bloco de notas, de dentro do ambiente de desenvolvimento
integrado (IDE).
Para adicionar uma ferramenta externa a esse menu
1.
2.

No menu Tools, escolha External Tools.


Na caixa de dilogo da External Tools, escolher Add, e digite um nome
para a opo de menu na caixa Title.
Dica
Digite um E comercial antes uma das letras no nome ferramenta para criar uma tecla aceleradora para o
comando quando ela aparecer no menu Tools. For example, if you use M&y External Tool, the letter 'y'
will be the accelerator key.

Visual Studio

329

3.

Na caixa Command, digite o caminho para o arquivo voc pretenda iniciar,


ou optar Browse por navegue at o arquivo. Tipos de arquivos que voc pode
iniciar incluem.exe,.bat,.com,.cmd, e.pif.
Observao
Se o arquivo reside no caminho do sistema, poder inserir apenas o nome de arquivo. Caso contrrio,
insira o caminho completo para o arquivo.

4.

Selecione Use output window e Close on exit, como apropriado, e escolha


OK.
Observao
A Use output window opo est disponvel para arquivos.bat e.com somente.

Um comando para a ferramenta, usando o texto inserido como o ttulo, agora


aparece no menu Tools. Para iniciar a ferramenta, escolhendo o novo comando de
menu.
Observao
Adicionando uma ferramenta externa a esse menu no no registrar um aplicativo como a ferramenta
padro do seu tipo. Por exemplo, se voc desejar usar seu editor externo favorito para modificar
marcaes HTML, voc pode definir essa preferncia do Caixa de dilogo Opes browser, Ambiente,
Web.. o Caixa de dilogo Opes browser, Ambiente, Web Tambm facilmente voc pode criar um
projeto add-in Visual Studio para informar o IDE na inicializao um utilitrio externo que manipular
tarefas, como marcao validao ou fonte integrao de controle de cdigo.
Passar variveis para ferramentas externas
Voc pode especificar que determinadas informaes ser passadas para um
comando quando ele for iniciado, como opes de linha de comando para
aplicativos de console.
Para passar variveis para a ferramenta
1.

Na caixa Arguments, digite os argumentos que deseja passar para a


ferramenta, ou escolha o boto de direo para selecionar um argumento
predefinido.
Observao
Para obter mais informaes sobre sintaxe argumento, consulte Argumentos para ferramentas externos.

2.

Selecione Prompt for arguments Se voc desejar a opo de edio os


argumentos no momento o comando iniciado.

Quando voc iniciar a ferramenta externa partir menu Ferramentas, em seguida os


argumentos que voc selecionou ser automaticamente passados para a
ferramenta. Se voc selecionou Prompt for Arguments, caixa Arguments de
dilogo aparecer.
Especificar uma pasta de trabalho

Visual Studio

330

Voc tambm pode especificar a pasta de trabalho para a ferramenta ou comando


Por exemplo, se a ferramenta l dados do sistema de arquivos da pasta atual, a
ferramenta requer se certos componentes de programa esto presentes na pasta
atual na inicializao.
Para especificar uma pasta de trabalho para a ferramenta

Na caixa Initial directory, digite a pasta de trabalho para a ferramenta, ou


escolha o boto de direo para selecionar um local de diretrio predefinidos.

Selecione Prompt for arguments se voc gostaria que tem a opo de especificar
argumentos adicionais no momento o comando iniciado.
Exibir sada Unicode na janela de sada
Se voc usar uma ferramenta que fornece a sada de unicode em vez de ASCII,
voc pode optar por exibir o Unicode na janela de sada.
Para exibir sada Unicode na janela de sada
Selecione Treat output as Unicode.

Observao
No selecionar esta opo para ferramentas que fornecem sada em ASCII.
Consulte tambm
Visual Studio

Como personalizar a seo de notcias da pgina Iniciar:


Voc pode especificar qualquer RSS vlido alimentao para a seo de notcias do
Start Page.
Observao
As opes disponveis nas caixas de dilogo e os nomes e locais dos comandos de menu que voc v
podem diferir do que descrito na Ajuda, dependendo de suas configuraes ativas ou da edio. Esta
pgina Ajuda foi gravada com General Environment Settings em mente. Para alterar as configuraes,
no menu Tools, clique em Import and Export Settings. Para obter mais informaes, consulte
Configuraes do Visual Studio.
Para personalizar a seo de notcias da pgina inicial
1.

No menu Tools, clique em Options.

2.

Expanda Environment e clique em Startup.

3.

Em Start Page news channel, digite um novo RSS alimentao URL.

4.

Clique em OK.

Consulte tambm
Visual Studio

Como alterar o item exibido em Iniciar Backup do ambiente de


desenvolvimento do:
Voc pode alterar a interface de usurio que aparece por padro quando voc inicia
Visual Studio.

Visual Studio

331

Observao
As opes disponveis nas caixas de dilogo e os nomes e locais dos comandos de menu que voc v
podem diferir do que descrito na Ajuda, dependendo de suas configuraes ativas ou da edio. Esta
pgina Ajuda foi gravada com General Development Settings em mente. Para alterar as configuraes,
escolha Import and Export Settings No menu Tools. Para obter mais informaes, consulte
Configuraes do Visual Studio.
Para alterar o padro UI exibida quando voc inicia o Visual Studio
1.

No menu Tools, escolha Options.

2.

Expandir Environment e escolha Startup.

3.
4.

Na lista At startup drop-down, escolha uma das opes. Para obter mais
informaes, consulte Caixa de dilogo Opes inicializao, Ambiente,.
Clique em OK.
As alteraes tenham efeito voc iniciar Visual Studio na prxima vez.

Consulte tambm
Visual Studio

Trabalhando com configuraes


Esta seo contm informaes sobre a aplicao, exportar e importar
configuraes para personalizar o ambiente de desenvolvimento integrado (IDE)
para melhor correspondncia seu estilo de desenvolvimento. Voc tambm pode
encontrar informaes gerais sobre como configuraes funcionam e os tipos de
itens que so personalizadas atravs das configuraes. Alm disso, aprender a
especificar um conjunto de configuraes de uso da equipe.
Nesta seo
Configuraes do Visual Studio
COMO: Compartilhar configuraes entre computadores
Como: Alterar configuraes selecionadas
Como: Especificar configuraes para uma equipe
Import and Export Settings Wizard
Referncia
Importar e exportar configuraes, Ambiente, caixa de dilogo Opes

Configuraes do Visual Studio


Configuraes no Visual Studio consistir de personalizaes feitas para o ambiente
de desenvolvimento integrado (IDE) com base em diferentes tipos de atividades de
desenvolvimento e seus prprios personalizaes. Essas personalizaes incluir
mostrar ou ocultar determinada layouts janela, colocao dos comandos de menu,
nomes de menu, modelos disponveis na caixa de dilogo Novo projetos, janelas de
ferramentas, predefinidas combinaes de teclas de atalho, e ajuda filtros, e assim
por diante.
Com configuraes, voc pode:

Visual Studio

332

Criar uma cpia das suas configuraes ativa para uso em uma segunda
mquina
Compartilhar suas configuraes Ativa com outros desenvolvedores
Permitir todos os membros da equipe para usar as mesmas configuraes em
Selecione reas, como o editor, sem remover personalizaes para outras reas
individuais

Quais so configuraes?
Configuraes so personalizaes ao IDE, como layouts janela, padres editor, e
opes caixa dilogo disponveis que voc pode salvar, Exportar, importar, ou
redefinir para facilitar o IDE para usar.
As configuraes Ativa consistem em duas partes: predefinidas personalizaes do
arquivo instalado.vssettings voc selecionou na primeira vez voc iniciou Visual
Studio e qualquer personalizao IDE subseqentes que voc fez. Configuraes
ativa so salvas por padro no currentsettings.vssettings arquivo.
Para obter mais informaes sobre as configuraes predefinidas disponveis com
Visual Studio, consulte os seguintes tpicos.
Como configuraes funcionam?
Quando voc inicia Visual Studio, primeiro necessrio para selecionar uma
coleo configuraes que contm configuraes predefinidas projetadas para
corresponder seus hbitos de desenvolvimento. Se voc atualizar para outro edio
do Visual Studio, voc tambm ter a opo de aplicar configuraes a outros
edio na usando a My Previous Settings opo. A coleo configuraes o
primeiro elemento de suas configuraes ativa. Cada vez que fizer uma alterao
em uma configurao controlada pelo Visual Studio, como alterar a cor do
commented cdigo no Editor, a alterao automaticamente salvo para
currentsettings.vssettings juntamente com as configuraes predefinidas. O Visual
Studio aplica suas configuraes ativa automaticamente sempre que voc iniciar o
Visual Studio.
Em alguns casos, voc pode alterar as configuraes aplicadas como parte de uma
coleo predefinida Por exemplo, se uma coleo configuraes simplificada caixa
de dilogo Opes, ocultando pginas, voc pode exibir essas pginas
manualmente, selecionando Show all settings. Em outros casos, voc no pode
substituir a configurao predefinida sem aplicar uma coleo diferente. Para obter
uma lista detalhada das personalizaes includos no configuraes predefinidas,
consulte Configuraes do Visual Studio. Para obter informaes sobre como aplicar
colees configuraes diferentes, consulte Como: Alterar configuraes
selecionadas.
Configuraes podem ser aplicadas de duas maneiras: completamente voc pode
substituir as configuraes Ativa com novas configuraes ou voc pode substituir
uma parte de suas configuraes ativa. Importar um arquivo que contm todas as
categorias configuraes possveis.vssettings ou aplicar outra coleo configuraes
dois substituiro as configuraes ativa completamente. Importar um arquivo que
contm somente um subconjunto das categorias configuraes ou unselecting
categorias configuraes em um arquivo.vssettings.vssettings s se aplica essas
configuraes que estiver selecionadas, deixando as configuraes ativos para as
categorias restantes intacto.
Ajuda e Configuraes
Colees configuraes predefinidas tambm fornecer personalizaes Ajuda.
Configuraes especificam o padro How Do I Pgina na Ajuda. Eu selecionado

Visual Studio

333

como pendente eu pgina filtros fazer o contedo que aparece no ndice analtico e
no ndice,, bem como fornece contedo personalizado na caixa como guia. Voc
pode alterar o ativo How Do I pgina na lista drop-down como pendente eu outras
pginas.
Configuraes e segurana
Algumas categorias configuraes podem conter informaes sobre voc ou seu
computador que pode ser uma questo de segurana se voc compartilhar suas
configuraes com outros usurios. Inversamente, se voc pretende importar
configuraes fornecidas por outras pessoas, voc precisar estar ciente das
categorias dentro do arquivo configuraes que podem ser uma questo de
segurana. Um cone aparece ao lado essas categorias com as possveis questes
de segurana. Essas categorias configuraes incluem:

Favoritos

Importar e exportar configuraes

Consulte tambm
Outros recursos

Como: Alterar configuraes selecionadas


Voc pode aplicar um sub-set das configuraes de uma coleo configuraes
diferentes para as configuraes atuais para criar um ambiente de desenvolvimento
mais personalizada. Para obter mais informaes sobre configuraes predefinidas,
consulte Configuraes do Visual Studio.
Para alterar configuraes selecione
13. No menu Tools, escolha Import and Export Settings.
14. Na Welcome to the Import and Export Settings Wizard Pgina, clique
em Import selected environment settings e clique em Next.
15. Na pgina Save Current Settings, selecionar Yes, save my current
settings, e clique em Next
16. No Which collection of settings do you want to import, selecione uma
coleo configuraes na lista e clique em Next.
17. No Which settings do you want to import, expanda a lista e selecione
apenas a categorias ou itens de categoria que voc deseja que se aplicam as
configuraes atuais.
18. Clique em Finish.
A Reset Complete pgina lista os erros associados a redefinindo as
configuraes com Details.
Consulte tambm

Trabalhando com configuraes


Esta seo contm informaes sobre a aplicao, exportar e importar
configuraes para personalizar o ambiente de desenvolvimento integrado (IDE)
para melhor correspondncia seu estilo de desenvolvimento. Voc tambm pode
encontrar informaes gerais sobre como configuraes funcionam e os tipos de
itens que so personalizadas atravs das configuraes. Alm disso, aprender a
especificar um conjunto de configuraes de uso da equipe.
Nesta seo

Visual Studio

334

Configuraes do Visual Studio


COMO: Compartilhar configuraes entre computadores
Como: Alterar configuraes selecionadas
Como: Especificar configuraes para uma equipe
Import and Export Settings Wizard
Referncia
Importar e exportar configuraes, Ambiente, caixa de dilogo Opes

COMO: Compartilhar configuraes entre computadores


Voc pode exportar configuraes para o editor, projetos, depurao, fontes e
cores, e outras reas IDE a um arquivo que voc pode importar e usar em outro
computador, como seu computador de desenvolvimento segundo ou computador
um colega na.
Exportar configuraes para um arquivo
Voc pode optar por exportar todas ou algumas das suas configuraes atuais a um
arquivo.vssettings que voc pode usar em um computador segundo ou compartilhar
com outros desenvolvedores.
Para exportar configuraes
15. No menu Tools, escolha Import and Export Settings.
16. Na Welcome to the Import and Export Settings Wizard Pgina, clique
em Export selected environment settings e clique em Next.
17. No Which settings do you want to export?, selecione as categorias voc
pretende exportar e, em seguida, clique em Next Configuraes.
Observao
Algumas categorias configuraes podem conter informaes sobre voc ou seu computador que pode ser
uma questo de segurana. Essas categorias configuraes so identificadas por um cone de aviso
amarelo e preto.
18. No What do you want to name your settings file, digite um nome para o
arquivo de configuraes.
19. Se voc gostaria de salvar o arquivo em um local diferente, clique Browse
ou digite um novo caminho para Store my settings file in this directory.
20. Clique em Finish.
21. Na pgina Export Complete, examine os erros associados exportao as
configuraes com Details.
Importar um arquivo.vssettings
Aps ter criado um arquivo.vssettings, voc pode usar esse arquivo em outros
computadores ao importar esse arquivo para outra instalao do Visual Studio.
Voc tambm pode importar arquivos de configurao criados por outros usurios e
aplicar essas configuraes para o Visual Studio.
Se voc est importando o arquivo configuraes contm todas as categorias
configuraes possveis, importar esse arquivo completamente substitui as

Visual Studio

335

configuraes existentes. Importar o arquivo se um arquivo de configuraes


contm apenas um subconjunto das categorias configuraes, apenas aplica essas
categorias e no afeta as configuraes atuais para categorias no importadas.
Um desenvolvedor na equipe por exemplo, tem exportadas todas as sua
configuraes para um arquivo para que outras pessoas na equipe podem utiliz-lo.
Se voc desejar se aplicar as configuraes de fontes e cores e as configuraes
teclado desse arquivo, somente voc pode limpar todos os outras categorias
configuraes e apenas aplicar as configuraes selecionadas sem alterar as
configuraes atuais para as categorias restantes
Para importar configuraes
17. No menu Tools, escolha Import and Export Settings.
18. Na Welcome to the Import and Export Settings Wizard Pgina, clique
em Import selected environment settings e clique em Next.
19. Logon Save Current Settings, optar Yes, save my current settings por
criar um backup de suas personalizaes IDE atuais; optar No, just import
new settings, overwriting my current settings por continuar sem fazer o
backup suas personalizaes IDE atuais.
20. No What collection of settings do you want to import?, selecione um
arquivo na lista ou clique Browse para localizar um arquivo de configuraes
e clique em Next.
21. No Which settings do you want to import?, selecione as configuraes
opes voc pretende importar do arquivo.vssettings selecionado.
Observao
Algumas categorias configuraes podem conter informaes que podem ser uma questo de segurana.
Essas categorias configuraes so identificadas por um cone de aviso amarelo e preto.
22. Clique em Finish.
23. Na caixa Save Current Settings de dilogo, decidir se deve ou no para
salvar as configuraes atuais.
24. Na pgina Import Complete, examine os erros associados a importar as
configuraes em Details.
Compartilhar um arquivo nico.vssettings entre computadores
Em vez de criar uma cpia das suas configuraes atuais e usando a cpia em
outro computador, voc pode compartilhar um arquivo.vssettings nico em um
compartilhamento de rede. Essa tcnica pode ser til se voc desejar as
personalizaes mesmas exatas disponveis em todas as vezes em vrios
computadores.
Quando voc compartilhar um arquivo.vssettings nico em vrios computadores,
personalizaes feitas, independentemente do computador no qual voc torn-los
na, so salvas para o arquivo.vssettings. A lista Tarefas por exemplo, se voc
fechar a lista de tarefas em um computador, na prxima vez que voc iniciar o
Visual Studio em outros computadores, no ser exibida.
Para compartilhar um arquivo nico configuraes entre computadores
11. No menu Tools, escolha Options
12. Na pasta Environment, escolha Import and Export Settings.

Visual Studio

336

13. Na Automatically save my settings to this file, digite uma pasta


compartilhada ou clique Browse para localizar um compartilhamento de rede.
14. Clique em OK.
15. No segundo computador, repita as etapas 1 a 4.
Consulte tambm

Como: Especificar configuraes para uma equipe


Quando estiver trabalhando em um grupo, ele pode ser til para que cada
desenvolvedor usar as configuraes mesmas exatas em algumas reas do
ambiente de desenvolvimento integrado (IDE), como o editor. Voc pode incentivar
Essa consistncia criando um arquivo.vssettings para um subconjunto de categorias
configuraes disponveis que todos os desenvolvedores de seu grupo podem usar.
Quando aplicado, essas configuraes da equipe no seria substituem qualquer
categoria no especificada no arquivo.vssettings, permitindo que desenvolvedores
individuais para manter personalizaes feitas para outras reas do IDE. Para obter
informaes sobre como criar um arquivo.vssettings, consulte COMO: Compartilhar
configuraes entre computadores.
O Visual Studio verifica que voc estiver usando a verso mais recente do
arquivo.vssettings de grupo sempre que voc iniciar o Visual Studio. Quaisquer
alteraes feitas no arquivo.vssettings so aplicadas automaticamente.
Para especificar um arquivo.vssettings para uso em um grupo
11. Partir do Tools menu, escolha Options.
12. Na pasta Environment, escolha Import and Export Settings.
13. Selecione Use team settings file.
14. Insira um UNC ou caminho local, ou clique Browse para localizar o
arquivo.vssettings de grupo.
15. Clique OK para aplicar as configuraes.
Consulte tambm

Import and Export Settings Wizard


Use este assistente para exportar configuraes, importar configuraes, ou
substituir as configuraes para usar uma coleo configuraes predefinidas.
Opo

Descrio

Exportar configuraes de
ambiente selecionada

Salvar um subconjunto ou todas as suas configuraes existentes para


que voc pode usar essas configuraes em outro computador.

Importar configuraes de
ambiente selecionada

Aplica as configuraes em um arquivo voc tiver recebido. Substitui


existentes configuraes com os do arquivo importado.

Redefinir todas as
configuraes

Permite que voc se reverter as configuraes de volta para uma das


configuraes predefinidas disponveis com o produto.

Voc pode acessar este assistente a partir do Tools Menu, escolhendo Import and
Export Settings.

Visual Studio

337

Escolha Configuraes para exportar, importar e exportar


configuraes Assistente
Use esta pgina do Assistente para configuraes a importao e exportao para
especificar algumas ou todas as suas configuraes atuais ser exportados para um
arquivo para uso em outros computadores. Voc pode acessar este assistente a
partir do Tools menu clicando Import and Export Settings.

COMO: Compartilhar configuraes entre computadores

Which settings do you want to export?


Selecione para exportar todas as configuraes, ou especificar um sub-set
das configuraes por categoria ou item de categoria.
Observao
Configuraes que podem conter informaes de identificao sobre voc ou seu computador so
marcadas com um grfico de aviso. Essas configuraes no so selecionados por padro, mas so
automaticamente selecionados se voc escolher All Settings.
Consulte tambm
Conceitos

Nomeie O arquivo de configuraes, importar e exportar


configuraes Assistente
Use esta pgina do Assistente para configuraes a importao e exportao para
especificar o nome e local do arquivo que ir conter as configuraes exportadas.
Voc pode acessar este assistente a partir do Tools menu clicando Import and
Export Settings.
COMO: Compartilhar configuraes entre computadores
What do you want to name your settings file?
Digite um nome personalizado para as configuraes exportadas.
Store my settings file in this directory.
Especifica o diretrio padro no qual as configuraes exportadas sero
salvos. Clique Browse para especificar uma pasta personalizada.
Consulte tambm
Conceitos

Salvar configuraes atuais, importar e Assistente para


exportao configuraes
Use esta pgina do Assistente para configuraes a importao e exportao para
salvar as configuraes ativos antes de importar novas configuraes. Voc pode
acessar este assistente a partir do Tools menu clicando Import and Export
Settings.
COMO: Compartilhar configuraes entre computadores
Yes, save my current settings

Visual Studio

338

Selecione esta opo para criar um backup das suas configuraes atuais.
Mais tarde voc pode optar por importar essas configuraes para retornar
ao estado IDE atual.
Setting file name

Digite um nome personalizado para as configuraes atuais.

Store my settings file in


this directory

Especifica o diretrio padro no qual as configuraes atuais sero salvos.


Clique Browse para especificar uma pasta personalizada.

No, just import new settings, overwriting my current settings


Selecione esta opo se voc no quiser backup as configuraes atuais. Se
voc est importando o arquivo configuraes contm configuraes para
itens de categoria voc ter personalizado, as configuraes importadas
substituir as alteraes.
Consulte tambm

Escolha Configuraes para importar, importar e Assistente


configuraes exportao
Use esta pgina do Assistente para configuraes a importao e exportao para
especificar a coleo Configuraes voc pretende importar. Voc pode acessar este
assistente a partir do Tools menu clicando Import and Export Settings.

COMO: Compartilhar configuraes entre computadores

Which settings do you want to import?


Selecione uma coleo na lista, ou clique Browse para localizar uma coleo
diferente para importar.
Description
Exibe informaes sobre a coleo configuraes que so otimizadas para.
Somente disponvel para Default Settings.
Consulte tambm

Escolha um coleo de configuraes para importar, importar e


Assistente configuraes exportao
Use esta pgina do assistente Importar e exportar configuraes para especificar
uma coleo configuraes predefinidos ou uma coleo configuraes
personalizadas voc deseja importar para uso no IDE. Voc pode acessar este
assistente a partir do Tools menu clicando Import and Export Settings.

Como: Alterar configuraes selecionadas

Which collection of settings do you want to import?


Lista as colees configuraes disponveis. Clique Browse para navegar
para uma coleo configuraes que no aparece na lista.
Description
Exibe informaes sobre a coleo configuraes que so otimizadas para.
Para obter mais informaes sobre colees configuraes predefinidas,
consulte Configuraes do Visual Studio.

Visual Studio

339

Consulte tambm

<task> Complete, Import and Export Settings Wizard


Esta pgina do importao e assistente exportar para configuraes exibe
informaes sobre a tarefa configuraes concluda com xito ou no e todos os
erros que foram encontrados. Voc pode acessar este assistente a partir do Tools
menu clicando Import and Export Settings.
Details
Exibe informaes sobre qualquer sucesso ou falhas.
Consulte tambm
Visual Studio

COMO: Compartilhar configuraes entre computadores


Voc pode exportar configuraes para o editor, projetos, depurao, fontes e
cores, e outras reas IDE a um arquivo que voc pode importar e usar em outro
computador, como seu computador de desenvolvimento segundo ou computador
um colega na.
Exportar configuraes para um arquivo
Voc pode optar por exportar todas ou algumas das suas configuraes atuais a um
arquivo.vssettings que voc pode usar em um computador segundo ou compartilhar
com outros desenvolvedores.
Para exportar configuraes
1.

No menu Tools, escolha Import and Export Settings.

2.

Na Welcome to the Import and Export Settings Wizard Pgina, clique


em Export selected environment settings e clique em Next.

3.

No Which settings do you want to export?, selecione as categorias voc


pretende exportar e, em seguida, clique em Next Configuraes.
Observao
Algumas categorias configuraes podem conter informaes sobre voc ou seu computador que pode ser
uma questo de segurana. Essas categorias configuraes so identificadas por um cone de aviso
amarelo e preto.

4.

No What do you want to name your settings file, digite um nome para o
arquivo de configuraes.

5.

Se voc gostaria de salvar o arquivo em um local diferente, clique Browse


ou digite um novo caminho para Store my settings file in this directory.

6.
7.

Clique em Finish.
Na pgina Export Complete, examine os erros associados exportao as
configuraes com Details.

Importar um arquivo.vssettings
Aps ter criado um arquivo.vssettings, voc pode usar esse arquivo em outros
computadores ao importar esse arquivo para outra instalao do Visual Studio.

Visual Studio

340

Voc tambm pode importar arquivos de configurao criados por outros usurios e
aplicar essas configuraes para o Visual Studio.
Se voc est importando o arquivo configuraes contm todas as categorias
configuraes possveis, importar esse arquivo completamente substitui as
configuraes existentes. Importar o arquivo se um arquivo de configuraes
contm apenas um subconjunto das categorias configuraes, apenas aplica essas
categorias e no afeta as configuraes atuais para categorias no importadas.
Um desenvolvedor na equipe por exemplo, tem exportadas todas as sua
configuraes para um arquivo para que outras pessoas na equipe podem utiliz-lo.
Se voc desejar se aplicar as configuraes de fontes e cores e as configuraes
teclado desse arquivo, somente voc pode limpar todos os outras categorias
configuraes e apenas aplicar as configuraes selecionadas sem alterar as
configuraes atuais para as categorias restantes
Para importar configuraes
1.

No menu Tools, escolha Import and Export Settings.

2.

Na Welcome to the Import and Export Settings Wizard Pgina, clique


em Import selected environment settings e clique em Next.

3.

Logon Save Current Settings, optar Yes, save my current settings por
criar um backup de suas personalizaes IDE atuais; optar No, just import
new settings, overwriting my current settings por continuar sem fazer o
backup suas personalizaes IDE atuais.

4.

No What collection of settings do you want to import?, selecione um


arquivo na lista ou clique Browse para localizar um arquivo de configuraes
e clique em Next.

5.

No Which settings do you want to import?, selecione as configuraes


opes voc pretende importar do arquivo.vssettings selecionado.
Observao
Algumas categorias configuraes podem conter informaes que podem ser uma questo de segurana.
Essas categorias configuraes so identificadas por um cone de aviso amarelo e preto.

6.

Clique em Finish.

7.

Na caixa Save Current Settings de dilogo, decidir se deve ou no para


salvar as configuraes atuais.

8.

Na pgina Import Complete, examine os erros associados a importar as


configuraes em Details.

Compartilhar um arquivo nico.vssettings entre computadores


Em vez de criar uma cpia das suas configuraes atuais e usando a cpia em
outro computador, voc pode compartilhar um arquivo.vssettings nico em um
compartilhamento de rede. Essa tcnica pode ser til se voc desejar as
personalizaes mesmas exatas disponveis em todas as vezes em vrios
computadores.
Quando voc compartilhar um arquivo.vssettings nico em vrios computadores,
personalizaes feitas, independentemente do computador no qual voc torn-los
na, so salvas para o arquivo.vssettings. A lista Tarefas por exemplo, se voc

Visual Studio

341

fechar a lista de tarefas em um computador, na prxima vez que voc iniciar o


Visual Studio em outros computadores, no ser exibida.
Para compartilhar um arquivo nico configuraes entre computadores
1.

No menu Tools, escolha Options

2.

Na pasta Environment, escolha Import and Export Settings.

3.

Na Automatically save my settings to this file, digite uma pasta


compartilhada ou clique Browse para localizar um compartilhamento de rede.

4.

Clique em OK.

5.

No segundo computador, repita as etapas 1 a 4.

Consulte tambm
Visual Studio

Como: Alterar configuraes selecionadas


Voc pode aplicar um sub-set das configuraes de uma coleo configuraes
diferentes para as configuraes atuais para criar um ambiente de desenvolvimento
mais personalizada. Para obter mais informaes sobre configuraes predefinidas,
consulte Configuraes do Visual Studio.
Para alterar configuraes selecione
1.

No menu Tools, escolha Import and Export Settings.

2.

Na Welcome to the Import and Export Settings Wizard Pgina, clique


em Import selected environment settings e clique em Next.

3.

Na pgina Save Current Settings, selecionar Yes, save my current


settings, e clique em Next

4.

No Which collection of settings do you want to import, selecione uma


coleo configuraes na lista e clique em Next.

5.

No Which settings do you want to import, expanda a lista e selecione


apenas a categorias ou itens de categoria que voc deseja que se aplicam as
configuraes atuais.

6.

Clique em Finish.
A Reset Complete pgina lista os erros associados a redefinindo as
configuraes com Details.

Consulte tambm
Visual Studio

Como: Especificar configuraes para uma equipe


Quando estiver trabalhando em um grupo, ele pode ser til para que cada
desenvolvedor usar as configuraes mesmas exatas em algumas reas do
ambiente de desenvolvimento integrado (IDE), como o editor. Voc pode incentivar
Essa consistncia criando um arquivo.vssettings para um subconjunto de categorias
configuraes disponveis que todos os desenvolvedores de seu grupo podem usar.
Quando aplicado, essas configuraes da equipe no seria substituem qualquer
categoria no especificada no arquivo.vssettings, permitindo que desenvolvedores
individuais para manter personalizaes feitas para outras reas do IDE. Para obter
informaes sobre como criar um arquivo.vssettings, consulte COMO: Compartilhar
configuraes entre computadores.

Visual Studio

342

O Visual Studio verifica que voc estiver usando a verso mais recente do
arquivo.vssettings de grupo sempre que voc iniciar o Visual Studio. Quaisquer
alteraes feitas no arquivo.vssettings so aplicadas automaticamente.
Para especificar um arquivo.vssettings para uso em um grupo
1.

Partir do Tools menu, escolha Options.

2.

Na pasta Environment, escolha Import and Export Settings.

3.

Selecione Use team settings file.

4.
5.

Insira um UNC ou caminho local, ou clique Browse para localizar o


arquivo.vssettings de grupo.
Clique OK para aplicar as configuraes.

Consulte tambm
Visual Studio

Gerenciamento de janela
O IDE (ambiente de desenvolvimento integrado) fornece vrias ferramentas e
opes para ajud-lo a posicionar e mover entre janelas de documento e
ferramenta.
Dois modos interface diferente so fornecidos para trabalhar com janelas de
documento: Multiple documents modo e Tabbed documents modo.
Modo de interface

Descrio

Vrios documentos

O IDE fornece uma moldura pai que serve como um continer visual e lgica de
todas as janelas de documento.

Documentos com
guias

Janelas de documento so colocadas lado a lado-em painis com guias. O IDE usa
esse modo por padro.

Voc pode altera modos interface IDE usando o Geral, Ambiente, caixa de dilogo
Opes.

Tipos janela
O ambiente de desenvolvimento integrado (IDE) contm dois tipos bsicos janela:
tool windows e document windows. Esses tipos de janela dois se comportar de
maneiras ligeiramente diferentes.
Janelas ferramenta e janelas de documento no podem ser agrupadas juntos no
IDE.
Janelas de ferramentas
Janelas de ferramentas so listados no menu View e so definidos pelo aplicativo
atual e seus Add-ins.
Voc pode configurar janelas de ferramentas no IDE para:

Mostrar ou ocultar automaticamente

Guia Vnculo com outras janelas ferramenta

Encaixar contra as bordas do IDE

Visual Studio

343

Flutuar sobre

Exibir em outros monitores

Alm disso, voc pode exibir mais de uma ocorrncia de determinadas janelas
ferramenta ao mesmo tempo. Por exemplo, voc pode exibir mais de uma janela do
navegador. Voc pode criar novas instncias de uma janela ferramenta, escolhendo
New Window no menu Window. Alm disso, voc poder determinar como os
botes fechar e AutoOcultar afetam um grupo de janelas de ferramentas ancorada
juntos.
Janelas de documento
Janelas de documento dinamicamente so criadas quando voc abrir ou criar
arquivos ou outros itens. A lista de janelas de documento abertas exibida no
menu Window do atual na ordem z, com a janela mais alto-listada primeiro.
As maneiras em que voc gerenciar as janelas de documento depende muito do
modo de interface selecionado no Geral, Ambiente, caixa de dilogo Opes. Voc
pode optar por trabalhar no modo documentos Tabbed (o padro) ou no modo de
interface documentos mltiplos (MDI). Faa experincias com essas configuraes
para criar um documento edio ambiente que satisfaa suas necessidades e
preferncias. Para obter mais informaes, consulte Gerenciamento de janela.
Janelas dockable
Em modo Tabbed, voc pode tornar janelas de documento dockable ou undockable
ao marcar ou desmarcar Dockable no menu Janela. No modo MDI, as janelas de
documentos so undockable.
Dica
Determinados janelas de documento no IDE so realmente janelas ferramenta que tm a caracterstica
dockable est desativado. Para essas janelas, escolha Dockable a partir do Window Menu. ancorado
Grupos guia
Grupos guia esto disponveis somente no Tabbed Documents modo. Elas
estendem sua capacidade para gerenciar espao de trabalho limitado ao trabalhar
com dois ou mais documentos abertos no IDE. Voc pode organizar vrias janelas
de documento em grupos guia vertical ou horizontal e ordem facilmente aleatria
documentos de um grupo guia para outro.
Dica
Documentos com guias podem ser arrastados entre o IDE por suas guias.
Janelas tiled / Cascading
O Windows pode ser lado a lado ou organizados em cascata pilhas somente no
modo MDI.
Windows dividir
Quando voc encontrar mesmo que precisam exibir ou editar dois locais
simultaneamente em um documento, janelas de diviso podem ser til. Para dividir
o documento em duas sees independentemente rolagem, escolha Split No menu
Window. Selecione Remove Split a partir do Window menu para restaurar a
exibio nica.

Visual Studio

344

Reutilizar janelas de documento


Para reduzir o nmero de janelas abertos ao mesmo tempo, voc pode optar exibir
todos os documentos inalterados na mesma janela do documento, permitindo que
cada novo documento voc aberto substituir a ltima. Escolha a Re-use current
document window opo na pgina General do Environment Options.
Observao
Novos documentos ser aberto no janela de documento atual para desde que o documento ativo no foi
alterado.
Exibindo tpicos ajuda nas janelas
possvel exibir tpicos Ajuda interna ou externamente. Essas opes esto
disponveis no Ajuda, Ambiente, caixa de dilogo Opes.
Observao
Alteraes para essas configuraes s fazer tero efeito at que o IDE seja reiniciado.
Por padro, ajuda inicia tpicos da Ajuda em um programa externo chamado
Microsoft Document Explorer. Ajudar a ferramenta janelas podem flutuar, ou ser
encaixado e fixado aberto ou defina para ocultar automaticamente quando no
estiver em uso, muito semelhante janelas de ferramentas no IDE.

COMO: Organizar e ancorar janelas


O ambiente de desenvolvimento integrado (IDE) tem dois tipos de janelas:
ferramenta janelas e janelas de documento. Voc pode aumentar a exibio e
edio espao para cdigo, dependendo do como voc organizar as janelas no IDE.
Voc tem vrias opes para organizar janelas no IDE, incluindo o seguinte:

Guia - ancorado janelas de documento.

Ancorar janelas de ferramentas at a borda da moldura no IDE.

Minimizar janelas de ferramentas ao longo da borda do IDE.

Exibir janelas em monitores diferentes.

Colocar janelas de documentos lado a lado.

Redefinir posicionamento janela para o layout padro.

Para obter mais informaes sobre as diferenas entre janelas ferramenta e


documentos, consulte Tipos janela.
Observao
As caixas de dilogo e comandos de menu que voc v podem ser diferentes das descritas em Help
(Ajuda) dependendo das configuraes ativas ou edio. Para alterar as configuraes, escolha Import
and Export Settings No menu Tools. Para obter mais informaes, consulte Configuraes do Visual
Studio.

Visual Studio

345

Encaixe Windows
Editor janelas que exibem documentos podem ser organizadas em painis com
guias dentro do quadro de edio de IDE.
Para janelas Editor ancorado
1.

No menu Tools, clique em Options.

2.

Expanda a Environment pasta, e selecione General.


O Geral, Ambiente, caixa de dilogo Opes abre.

3.

Em Window layout, selecione a Tabbed documents opo.


Quando essa opo definida, documentos abertos em instncias do editor
automaticamente so organizados em painis com guias.

Quando uma janela ferramenta estiver dockable, ele pode ser encaixado para um
lado de uma moldura em IDE. Um losango guia aparece quando voc arrastar
janelas de ferramentas do seu local atual para outro local no IDE. O losango guia
permite-lhe encaixar rapidamente novamente uma janela ferramenta em um dos
quatro lados de IDE. Quando uma janela ferramenta desencaixado ou no
dockable, ele flutua na parte superior de outras janelas das.
Para janelas de ferramentas ancorado
1.

Clique na janela ferramenta voc deseja ancorado, para que ele foco.

2.

No menu Window, clique em Dockable.

3.

Arraste a janela de ferramentas do seu local atual em direo ao meio de


IDE.
Um losango guia aparece. As setas do losango quatro ponto em direo as
quatro bordas de IDE.
Dica
Para mover uma janela dockable sem ajust-lo para o lugar, pressione CTRL ao arrast-lo.

4.

5.

Quando voc est arrastando a janela atingir a posio onde voc deseja
ancorado.-lo, mova o ponteiro sobre a parte correspondente do losango guia
Tpicos da janela aparece na rea designada.
Para ancorado a janela em posio indicado, verso o boto do mouse.
Por exemplo, se Solution Explorer est encaixado na borda direita do IDE
ele na borda esquerda, voc deve arrastar Solution Explorer para o meio do
IDE, mova o ponteiro sobre esquerda da verso o boto do mouse no
losango guia, e. e voc desejar ancorado

Minimizar Windows da ferramenta


Janelas de ferramentas, todos os que aparea no menu View, suporte a um
recurso chamado AutoOcultar. Ocultar automtica permite-lhe ver mais do seu
cdigo ao mesmo tempo, minimizando janelas de ferramentas ao longo das bordas
do IDE quando no estiver em uso. Ocultar automtica s est disponvel no modo
vrios documentos.
Para ativar AutoOcultar

Clique na janela voc deseja ocultar para que ele foco.

Visual Studio

346

No menu Window, clique em Auto Hide.

ou
Clique no cone de anotaes na barra de ttulo da janela.
Ocultar automtica ativada
Volta para sua guia quando uma janela hidden auto-perde o foco, ele slides
automaticamente na borda de IDE. Enquanto uma janela estiver hidden auto-, seu
nome e cone esto visveis em uma guia na borda de IDE. Para exibir uma janela
hidden auto-, mova o ponteiro sobre o guia. A janela slides no modo de exibio e
est pronto para uso.
Para desativar AutoOcultar

Clique na janela voc deseja manter visveis para que ele foco.

No menu Window, clique Auto Hide para desmarcar a marca de seleo.


ou
Clique no cone de anotaes na barra de ttulo da janela.

Automtica desativada ocultar


Voc pode controlar a velocidade em que esses transies ocorrem. Para obter mais
informaes, consulte Geral, Ambiente, caixa de dilogo Opes.

Dica
Janelas de ferramentas que tm AutoOcultar ativado temporariamente slide no modo quando a janela tem
foco. Para ocultar a janela novamente, selecione um item fora da janela atual. Quando ela perde o foco,
ele slides volta fora de vista.

Visual Studio

347

Para ativar AutoOcultar para janelas de ferramentas


1.

No menu Tools, clique em Options.

2.

Expanda a Environment pasta, e selecione General.


O Geral, Ambiente, caixa de dilogo Opes abre.

3.

Em Window Layout, selecione a Multiple documents opo.

4.

Selecionar OK, seguida, feche e reinicie Visual Studio.


Quando Visual Studio funciona no vrios modo documentos, ferramenta
janelas podem ser minimizadas ao longo das bordas de IDE.

5.

No Multiple documents modo, selecione a janela ferramenta voc deseja


ancorado, para e siga os procedimentos anteriores " " ancorado janelas de
ferramentas.
Dica
Para mover uma janela dockable sem ajust-lo para o lugar, pressione CTRL ao arrast-lo pela tela
monitor.

6.

7.

Clique com o boto direito do mouse na janela ancorada ferramenta e, em


seguida clique em Auto Hide Os slides janela volta para sua guia na borda de
IDE.
Para exibir a janela, mova o ponteiro sobre sua guia na estrutura do IDE.
Observao
Para determinar a Geral, Ambiente, caixa de dilogo Opes. se Auto Hide opera em janelas de
ferramentas individualmente ou como ancorados grupos, consulte a Auto Hide button affects active tool
windows only opo na

Especificando um monitor
Se voc tiver um segundo monitor e seu suporta de plataforma us-lo, voc pode
escolher que monitoram para exibir janelas no.
Para colocar janelas de ferramentas em monitores diferentes
1.

Usar as Display configuraes em para configurar as configuraes monitor


vrios. o Control Panel Consulte a Ajuda do Windows para obter mais
informaes.

2.

Arraste a janela de ferramentas para o outro monitor. Esta opo somente


estar disponvel em plataformas que do suporte a vrios monitores.

Tiling Windows do documento


Se voc deseja exibir mais de um documento ao mesmo tempo enquanto edita
cdigo, voc pode colocar lado lado as janelas de documento.
Para colocar lado a lado janelas de documento

Se o IDE est sendo executado no Tabbed documents modo, selecione


uma guia e arraste-abaixo ou acima no lado de documento atual. Um contorno
retangular aparece no local onde o novo lado de documento ser colocado.
ou

Visual Studio

348

Se voc tiver definido o IDE para usar o Multiple documents layout


janela, clique no Windows menu e, em seguida, clique em Tile Horizontally
ou Tile Vertically. Para obter mais informaes, consulte Geral, Ambiente,
caixa de dilogo Opes.

Redefinindo layouts da janela


Voc pode retornar o IDE para o layout janela original para a coleo configuraes
usando o Reset Window Layout comando. Quando voc executar este comando,
as seguintes aes ocorrem:
Todas as janelas so movidas para suas posies padro.

Janelas que esto fechadas no layout janela padro so fechadas pelo


comando.

Janelas que esto abertas no layout da janela padro so abertas pelo


comando.

Voc pode especificar um layout janela padro diferente, modificando as


configuraes atuais. Para obter mais informaes, consulte Como: Alterar
configuraes selecionadas.
Para redefinir posicionamento janela para o layout padro
1.

No menu Windows, clique em Reset Window Layout.

2.

Na caixa de mensagem, clique em Yes.

Consulte tambm

HOW TO: Windows IDE de lista e arquivos Active


Como uma convenincia, (IDE) o Ambiente de Desenvolvimento Integrado do
Visual Studio fornece um IDE Navigator. Esta caixa de dilogo permite que voc
escolha rapidamente as janelas IDE e abrir arquivos voc estiver usando. Para
exibir o IDE Navigator, uso uma das combinaes de teclas de atalho atribudas
ao comando Window.NextDocumentWindowNav.
Se o esquema de mapeamento do teclado padro para o idioma em que voc so
programando atribui o atalho global CTRL + TAB para este comando, voc pode
duas pressione este atalho e mantenha pressionada a tecla CTRL para exibir com a
janela IDE anterior selecionada.. Com o anteriormente arquivo ativo selecionada,
ou pressione o atalho ALT+F7 e mantenha pressionado o ALT chave para exibir com
o anteriormente arquivo ativo selecionado, ou pressione o atalho ALT+F7 e
mantenha pressionado o ALT chave para exibir com a janela IDE anterior
selecionada o IDE Navigator o IDE Navigator o IDE Navigator o IDE
Navigator
Se o esquema de mapeamento do teclado para o idioma de desenvolvimento no
incluir uma ligao chave para o Window.NextDocumentWindowNav Comando, ou se
voc preferir usar um cone diferente, voc pode remapear o atalho para este
comando na pgina Keyboard na pasta Environment da caixa Options de
dilogo. Para obter mais informaes, consulte Como: Trabalhar com combinaes
de teclas de atalho.
Observao
As opes disponveis nas caixas de dilogo e os nomes e locais dos comandos de menu que voc v
podem diferir do que descrito na Ajuda, dependendo de suas configuraes ativas ou da edio. Esta

Visual Studio

349

pgina Ajuda foi gravada com configuraes Visual C# em mente. Para exibir ou alterar as configuraes,
escolha Import and Export Settings No menu Tools. Para obter mais informaes, consulte
Configuraes do Visual Studio.
Para selecionar um item em uma lista do Windows e arquivos aberta com as teclas CTRL+TAB
1.

Pressione atalho CTRL + TAB para executar o Window.NextDocumentWindowNav


comando.
O IDE Navigator exibida com o arquivo anterior selecionado.

2.

Continuar a mantenha pressionada a tecla CTRL. Pressione a tecla TAB para


mover para baixo na Active Files lista, ou pressione SHIFT+TAB para mover
de volta backup desta lista.
-Ou-Pressione as teclas SETA para mover acima e abaixo esta lista, ou esquerda e
direita para colunas adjacentes.

3.

Quando voc tenha selecionado o nome do item desejado, verso a tecla


CTRL.
A IDE Navigator Fecha, e o item selecionado exibida.

Para selecionar um item em uma lista do Windows e arquivos aberta com ALT+F7
1.

Pressione o atalho ALT+F7 para executar o Window.NextDocumentWindowNav


comando.
O IDE Navigator exibida com a janela IDE anterior selecionada.

2.

Continuar a mantenha pressionada a tecla ALT. Pressione a tecla F7 para


mover para baixo e Active Files listas, ou pressione SHIFT+F7 para mover de
volta backup essas listas. o IDE Windows
-Ou-Pressione as teclas SETA para mover acima e abaixo essas listas, ou esquerda
e direita para colunas adjacentes.

3.

Quando voc tenha selecionado o nome do item desejado, verso a tecla


ALT.
A IDE Navigator Fecha, e o item selecionado exibida.

Consulte

Caixa de dilogo do Windows Visual Studio ()


Esta caixa de dilogo permite que voc para exibir, Fechar, e organizar documentos
que esto abertos no editores e projetistas. Voc pode exibir esta caixa de dilogo,
escolhendo Windows no Window menu.
Observao
As opes disponveis nas caixas de dilogo e os nomes e locais dos comandos de menu que voc v
podem diferir do que descrito na Ajuda, dependendo de suas configuraes ativas ou da edio. Para
alterar as configuraes, escolha Import and Export Settings No menu Tools. Para obter mais
informaes, consulte Configuraes do Visual Studio.
Name (Nome)

Visual Studio

350

Exibe os nomes das janelas de documentos e ferramenta, com o item ativo


selecionado.
Path
Exibe o caminho completo para documentos. Janelas normalmente no tem
um caminho.
Ativar
Faz o documento ou ferramenta Janela selecionado o item ativo no editor ou
Designer.
Fechar janelas
Fecha os documentos selecionados e janelas em Da lista.
Lado a lado horizontalmente
Exibe as janelas selecionadas um em cima do outro. Disponvel quando a
opo " de ambiente " MDI (Interface de Documentos Mltiplos) estiver
ativada no, os Geral, Ambiente, caixa de dilogo Opes nomes e o de dois
ou janelas mais abertas so selecionadas.
Lado a lado verticalmente
Exibe a lado-a-lado Janelas selecionadas. Disponvel quando a opo " de
ambiente " MDI (Interface de Documentos Mltiplos) estiver ativada no, os
Geral, Ambiente, caixa de dilogo Opes nomes e o de dois ou janelas mais
abertas so selecionadas.
Consulte tambm

Caixa de dilogo colunas


Determina as colunas que ir ser exibidas na janela do qual a Columns caixa de
dilogo exibida.
Colunas disponveis
Uma lista em ordem alfabtica ordenada das colunas que voc pode exibir na
janela pai.
Colunas exibidas
Uma lista em ordem alfabtica ordenada das colunas exibidas na janela pai
do momento.
Add
Move as colunas selecionadas na caixa Available Columns para a
Displayed Columns Caixa. Quando voc fechar a caixa de dilogo, as
colunas so exibidas na janela do qual voc exibida esta caixa de dilogo.
Remover
Remove as colunas selecionadas da lista Displayed Columns para a
Available Columns Lista.
Redefinir
Do Available Columns redefine e Displayed Columns listas para conter as
colunas que eles contidos quando a caixa de dilogo foi exibida. Do Move Up
clicando no Reset boto tambm desfaz quaisquer alteraes de
classificao que voc fez usando e Move Down Botes.

Visual Studio

351

Adicionar tudo
Move todas as colunas na lista Available Columns para a Displayed
Columns Lista.
Remover tudo
Move todas as colunas na lista Displayed Columns para a Available
Columns Lista.
Mover para cima
Move a coluna selecionada uma posio acima na ordem de exibio.
Mover para baixo
Move a coluna selecionada uma posio na ordem de exibio abaixo.
Consulte tambm

Caixa de dilogo colunas de classificao


Caixa Sort Columns de dilogo determina como informaes organizado e
exibida na janela pai atravs do qual a caixa chamada.
Voc pode usar a Sort Columns caixa para escolher colunas, especificar a ordem
em que colunas so exibidas, e defina como a escolhida colunas so classificados
Colunas de classificao
Lista as colunas que sero classificadas na caixa de dilogo pai.
Todas as colunas
Lista as colunas que podem ser classificadas na caixa de dilogo pai.
Add
Move o item selecionado da lista All Columns para a Sort Columns Lista.
Mover para cima
Move o item selecionado cima na ordem de classificao.
Mover para baixo
Move o item selecionado para baixo na ordem de classificao.
Remover
Remove o item selecionado da lista de colunas a ser classificado.
Crescente
Especifica que os itens na coluna selecionada sero classificados em ordem
crescente.
Decrescente
Especifica que os itens na coluna selecionada sero classificados em ordem
decrescente.
Consulte

Visual Studio

352

COMO: Navegar dentro do ambiente de desenvolvimento


integrado
O IDE (ambiente de desenvolvimento integrado) foi criado para tornar mais fcil de
mover a janela da janela e documento ao documento. O IDE fornece vrias
maneiras para mover rapidamente entre documentos abertos.
Do IDE Navigator voc pode usar para mover rapidamente para documentos que
voc est editando e para abrir janelas de ferramentas. Para obter mais
informaes sobre exibio e uso o IDE Navigator, consulte HOW TO: Windows
IDE de lista e arquivos Active.
Observao
As opes disponveis nas caixas de dilogo e os nomes e locais dos comandos de menu que voc v
podem diferir do que descrito na Ajuda, dependendo de suas configuraes ativas ou da edio. Esta
pgina Ajuda foi gravada com General Development Settings em mente. Para alterar as configuraes,
escolha Import and Export Settings No menu Tools. Para obter mais informaes, consulte
Configuraes do Visual Studio.
Selecionar Windows do documento
Se voc tiver Tabbed Documents Modo selecionado no documento Geral,
Ambiente, caixa de dilogo Opes,. janelas so colocadas lado a lado-em painis
com guias como eles so abertos Esse modo IDE padro simplifica para percorrer
os documentos que voc est editando.
Para percorrer documentos abertos por ordem de uso

Pressione CTRL + TAB para ativar documentos abertos na ordem que eles
foram mais recentemente toucheds.

Pressione CTRL + SHIFT + TAB para ativar documentos abertos na ordem


inversa.

Para obter informaes sobre marcando e localizando locais especficos em


arquivos, consulte Navegar atravs de cdigo.
Para obter informaes sobre como salvar uma lista pessoal de til tpicos de
ajuda, consulte Ajudar a janela de favoritos (Ajuda Explorer documento Microsoft).
Consulte tambm

Automao e extensibilidade para Visual Studio


Automao e extensibilidade se refere a capacidade de forma programtica
automatizar tarefas repetitivas e estender (IDE) o Visual Studio ambiente de
desenvolvimento integrado com ferramentas como os suplementos e assistentes.
Os tpicos a seguir explicam como usar os diversos modelos de programao para
fazer isso.

Estendendo o ambiente Visual Studio


Embora Visual Studio voc talvez precise um nvel de controle adicionais ou
maiores. oferece vrias ferramentas e a energia para executar quase cada tarefa,
Por exemplo, convm automatizar uma tarefa ou uma srie de tarefas que voc
executar regularmente. Ou voc pode ter criado ferramentas que voc deseja usar
no ambiente Visual Studio de desenvolvimento integrado (IDE).

Visual Studio

353

Para resolver esses problemas, Visual Studio Rich modelos de programao


conhecidos como os modelos de objeto de automao, para estender e automatizar
o IDE recursos. Os modelos automao vrios fornecem a capacidade para
automatizar o ambiente e fornecer extenses e novos recursos a ela. Cada modelo
concentrates a uma rea especfica do IDE, como as janelas ferramenta, o editor de
cdigo, vrios projetos, e assim por diante.
As sees abaixo apresentar a voc para automao e extensibilidade e mostram
como us-los para facilitar a programao.

O que h de novo no extensibilidade e automao do Visual


Studio 2005
Apresenta Visual Studio uma srie de modelos de objeto de destino, programvel.
Com esses modelos, voc pode acessar os componentes e eventos dentro do Visual
Studio ambiente de desenvolvimento integrado (IDE) e seus projetos subjacente.
Cada modelo contm tipos e membros que representam solues, projetos, janelas
de ferramentas, editores de cdigo, depuradores, objetos de cdigo, documentos,
eventos, e mais. Conseqentemente, voc pode estender a funcionalidade de IDE,
automatizar tarefas repetitivas, e integrar outros aplicativos ao IDE. Os modelos de
objeto possam ser acessados por qualquer um dos quatro mtodos:. Macros,
suplementos, assistentes, e o Visual Studio Industry Partner (VSIP) program
Novo para Visual Studio 2005
Os Visual Studio modelos de automao tm o seguintes alteraes e novos
recursos:

Rather Registro suplemento XML que registrar componentes no


Registro do Windows, voc arquivos XML uso agora para definir as
configuraes de Registro para Add-ins. Basta copiar o arquivo de Registro XML
para as pastas apropriadas para Visual Studio para localizar e carregar o
suplemento. Os arquivos contm comentrios que descrevem as marcas vrios,
que ajudam a facilmente localizar e editar suas configuraes. Quando voc
criar Add-ins, usando esse arquivo criado automaticamente. o Add-In
Manager, Para obter mais informaes, consulte Add-in de registro.

o DTE2.Toolwindows Novo EnvDTE80.ToolWindows objeto tambm est


disponvel como a EnvDTE80.DTE2.ToolWindows propriedade. Ele melhora a
descoberta e usabilidade de janelas de ferramentas no modelo de objeto,
fornecendo acesso fcil s janelas ferramenta no IDE em seus tipos nativos.
janelas de ferramentas Visual Studio podem ser acessadas atravs das
propriedades membro. Outras janelas ferramenta podem estar localizadas com
a nova GetToolWindow Funo.

o DTE.Toolwindows.CreateToolWindow2 Novo CreateToolWindow2


mtodo torna mais fcil para criar suas prprias janelas de ferramentas
personalizada que hospedam os controles do usurio. Um controle correo
no mais necessrio.

o Cdigo gerenciado Add-ins Add-In Wizard oferece suporte agora


em C++, assim, o .NET Framework como obter recursos de gerenciado Satellite
DLLs.

No Ferramentas opes gerenciados


Opes ferramentas para cdigo gerenciado.

a Suplemento Assistente e Visual J# Add-In Wizard agora oferece


suporte criando Add-ins usando Visual J# e Visual C++ 2005.

Visual Studio

h novas opes no menu

354

o Eventos KeyPress modelo de automao Editor oferece um novo


EnvDTE80.TextDocumentKeyPressEvents objeto que tem dois eventos para
lidar com entradas pressionamento de de Tecla no Editor:
EnvDTE80.TextDocumentKeyPressEventsClass.BeforeKeyPress e
EnvDTE80.TextDocumentKeyPressEventsClass.AfterKeyPress.

o Mtodo InsertNewLine modelo de automao Editor oferece um novo


EnvDTE80.EditPoint2.InsertNewLine(System.Int32) mtodo para inserir linhas
em documentos no editor.

Solues Pastas de soluo agora podem conter pastas Solution, alm


de projetos. So Pastas de Soluo (Solution Folders) recipientes do projeto
que permitem a voc para organizar melhor aplicativos grandes.

do Lista de tarefas (Visual Studio) Agora voc Tarefas de navegao


padro lista pode ir diretamente para linhas de cdigo clicando duas vezes
em itens em sem que seja necessrio fornecer cdigo adicional.

o Localizar sncrona EnvDTE80.DTE2.Find Objeto oferece uma nova


propriedade EnvDTE80.Find2.WaitForFindToComplete,. que permite a voc para
especificar se uma pesquisa executada de forma sncrona ou assincronamente

Algumas Suporte barra Comando Janela ferramenta janelas


ferramenta incluem uma barra de ferramentas para acessar sua funcionalidade.
Embora essas barras de ferramentas no esto disponveis a partir da
CommandBars coleo no objeto DTE, eles so disponveis no objeto Window
da janela da ferramenta.

o AddNamedCommand avanada Novo


EnvDTE80.vsCommandControlType Parmetro em AddNamedCommand2 agora
permite-lhe especificar o estilo de um boto, como somente texto, apenas,
cone ou texto e cone. Voc tambm pode criar tipos adicionais de controles
para colocar nas barras de ferramentas e menus, como controles caixa de
listagem, controles da caixa de edio da, e controles menu drop-down.

Macros de exemplo Localizao agora esto localizadas, e o Assistente


para Adicionar-in gera Add-ins com o idioma apropriado. Por exemplo, se voc
estiver executando japons Visual Studio, add-ins so criados usando os
modelos Japons (se eles esto disponveis).

Agora voc Add-in e segurana de macro pode especificar se as


macros so permitidas para executar, se os suplementos tm permisso para
carregar, e onde Visual Studio procura por arquivos de configurao.AddIn.
Para obter mais informaes, consulte Add-in de segurana e Segurana
macros e compartilhamento questes.

Funcionalidade barra comando Novo conjunto barra de comando foi


movida para um novo Visual Studio conjunto,
Microsoft.VisualStudio.CommandBars,. eliminando dependncia na
biblioteca Microsoft Office (Mso.dll) Para obter mais informaes, consulte
Alteraes CommandBar para o Visual Studio 2005.

Todos Consistncia do modelo de cdigo os idiomas de programao


em Visual Studio Uso do cdigo principal Modelo em relao a verses
anteriores, fazer para uma experincia mais consistente de programao.

Um Adies do modelo principal Novo conjunto chamado EnvDTE80


contm um nmero de novos membros de automao. Para obter mais
informaes, consulte Novos membros de automao para Visual Studio 2005.

Visual Studio

355

Um Adies do modelo de idioma Novo conjunto chamado


VSLangProj80 contm um nmero de novos membros de automao, para
Visual Basic, Visual C# e Visual J#. Para obter mais informaes, consulte
Novos membros de automao para Visual Studio 2005.

Mais Mais cdigo exemplo Tpicos da Ajuda para os diversos modelos


de objeto de automao agora recurso cdigo de exemplo. Muitos deles tm
ambas Visual Basic e Visual C# cdigo.

Automao e extensibilidade do Visual Studio

Novos membros de automao para Visual Studio 2005


Este tpico contm uma lista de todos os tipos novos para todos os modelos de
automao (principais e idioma) em Visual Studio.
Adiciona Visual Studio 2005 uma grande quantidade de funcionalidade a Automao
e atualiza funcionalidade existente. Para preservar compatibilidade com verses-e
facilitar Migrao de cdigo, na maioria dos casos a nova funcionalidade foi
adicionada aos novos conjuntos. Isso ajuda a evitar quebrar o cdigo existente que
depende as montagens antigas permitindo voc a atualizar os aplicativos com a
nova funcionalidade, se voc desejar.
Comentrios
Existem atualizaes para as reas Recurso de automao a seguir:

Modelo de automao principal Visual Studio

/ Visual BasicVisual C# Projeto Modelo de automao

Modelos de automao Visual C++


Modelo de automao Core Studio Visual

Nova funcionalidade para o Visual Studio modelo de automao principal est em


um novo conjunto, EnvDTE80. Este tpico lista todos os seus novos tipos e membros.
A biblioteca originais e inalterados usado nas verses anteriores do Visual Studio
Como, EnvDTE est includo. Pode, conseqentemente, os suplementos criados no
Visual Studio .NET 2002 ou o Visual Studio .NET 2003 na maioria dos casos, ser
migradas para Visual Studio 2005. Se voc desejar acessar qualquer uma da nova
funcionalidade, no entanto, seu projeto deve incluir uma referncia para
EnvDTE80.
Visual Basic C# / Model automao Project Visual J# / Visual
Nova funcionalidade para todos os o Visual Basic, Visual C#., e Visual J# Modelos
de automao do projeto est em um novo conjunto, VSLangProj80 Este tpico lista
todos os seus novos tipos e membros.
As bibliotecas originais e inalterados usados nas verses anteriores do Visual Studio
ou seja, VSLangProj e VSLangProj2 so includos. Conseqentemente, os
suplementos criados no Visual Studio .NET 2002 ou Visual Studio .NET 2003 e que
consultar esses podem bibliotecas, na maioria dos casos, ser migrados para Visual
Studio 2005.
Modelos de automao do Visual C++
A seguir uma lista de novos tipos e membros para os Visual C++ modelos de
automao. Ela inclui:

o modelo de projetos / criar contido em

Microsoft.VisualStudio.VCProjectEngine.

Visual Studio

Microsoft.VisualStudio.VCProject

356

o modelo de cdigo contido em

Microsoft.VisualStudio.VCCodeModel.

o modelo Assistente contido em

Microsoft.VisualStudio.VsWizard.

Nome Tipo

Novos membros

compileAsManagedOptions enum

managedAssemblyPure
managedAssemblySafe
managedAssemblyOldSyntax

Enum BuildWithPropertySheetType

Todos

compilerErrorReportingType enum

Todos

eCLRImageType enum

Todos

eCLRThreadAttribute enum

Todos

cppExceptionHandling enum

Todos

eDebuggerTypes enum

Todos

driverOption enum

Todos

eFileType enum

eFileTypeCSharpFile
eFileTypeClassDiagram
eFileTypeMHT
eFileTypePropertySheet
eFileTypeCUR

eSqlClrPermissionLevel enum

Todos

eWebRefUrlBehavior enum

Todos

floatingPointModel enum

Todos

linkerErrorReportingType enum

Todos

Enum LinkTimeCodeGenerationOption

Todos

machineTypeOption enum

machineAM33
machineARM
machineEBC
machineIA64
machineM32R
machineMIPS
machineMIPS16
machineMIPSFPU
machineMIPSFPU16
machineMIPSR41XX
machineSH3

Visual Studio

357

machineSH3DSP
machineSH4
machineSH5
machineTHUMB
machineAMD64
midlTargetEnvironment enum

midlTargetIA64

subSystemOption enum

subSystemNative
subSystemEFIApplication
subSystemEFIBootService
subSystemEFIROM
subSystemEFIRuntime
subSystemPosix
subSystemWindowsCE

Enum WholeProgramOptimizationTypes

Todos

IVCBuildOptionsPage

ExtensionsToInclude (GET & SET)


ExtensionsToHide (GET &amp; SET)
ToolFileSearchPaths (GET &amp; SET)
ShowMatchingRuleDialog (GET &amp; SET)
ShowNoMatchingRuleDialog (GET &amp; SET)
ValidateSchemas (GET &amp; SET)
DefaultSolutionExplorerMode (GET &amp; SET)

IVCWizCtl

Todos

IVCWizCtlUI

DatabaseConnection
SuspendParsing
ResumeParsing
DoesFileOrDirectoryExist

solutionExplorerMode

Todos

VCActiveXReference

WrapperSuccessfullyGenerated (get)
GenerationErrorMessage (get)

VCCLCompilerTool

ErrorReporting (GET & SET)


EnablePREfast (GET &amp; SET)
FloatingPointExceptions (GET &amp; SET)
floatingPointModel (GET &amp; SET)
GenerateXMLDocumentationFiles (GET &amp; SET)

Visual Studio

358

OmitDefaultLibName (GET &amp; SET)


OpenMP (GET &amp; SET)
UseFullPaths (GET &amp; SET)
UseUnicodeResponseFiles (GET &amp; SET)
XMLDocumentationFileName (GET &amp; SET)
VCCodeBase

Referncias

VCCodeClass

AddTemplateParameter
RemoveTemplateParameter
TemplateParameters
Referncias

VCCodeElement

Referncias

VCCodeEvent

IsVirtual
IsShared
Funes

VCCodeFunction

AddTemplateParameter
RemoveTemplateParameter
TemplateParameters
IsSealed
Referncias

VCCodeModel

DotNetNameFromLanguageSpecific
LanguageSpecificNameFromDotNet
ElementFromID

VCCodeParameter

IsConstant
IsVolatile

VCCodeProperty

IsTrivial
IsVirtual
IsShared
Funes
Parmetros

VCCodeReference

Todos

VCCodeStruct

AddTemplateParameter
RemoveTemplateParameter
TemplateParameters
Referncias

Visual Studio

359

VCCodeTypedef

Referncias

VCCodeVariable

Referncias
IsVolatile

VCConfiguration

BuildLogFile (GET & SET)


BuildWithPropertySheet
BuildWithPropertySheetPath
ClearToolProperty
Implantar
DeploymentTool (get)
ExcludeBuckets (GET & SET)
InheritedPropertySheets (GET &amp; SET)
IntrinsicPropertySheets (GET &amp; SET)
PropertySheets (get)
Vincular novamente
SqlAssemblyOwner (GET & SET)
SqlDebugScript (GET &amp; SET)
SqlDeploySource (GET &amp; SET)
SqlPermissionLevel (GET &amp; SET)
SqlPostDeployScript (GET &amp; SET)
SqlPreDeployScript (GET &amp; SET)
WaitForBuild

VCCustomBuildRule

Todos

VCDebugSettings

ApplicationArguments (GET & SET)


ApplicationCommand
DebuggerFlavor (GET & SET)
Env (GET &amp; SET)
EnvMerge (GET &amp; SET)
MPIAcceptFilter (GET &amp; SET)
MPIAcceptMode (GET &amp; SET)
MPIRunArguments (GET &amp; SET)
MPIRunCommand (GET &amp; SET)
MPIRunWorkingDirectory (GET &amp; SET)
ShimCommand (GET &amp; SET)

VCDirectories

Todos

Visual Studio

360

VCFile

UnexpandedRelativePath

VCFileCodeModel

IsManaged
IsMCOldSyntax

VCFileCodeUnion

AddTemplateParameter
RemoveTemplateParameter
TemplateParameters
Referncias

VCFilter

Remove()
UrlBehavior (get)

VCLanguageManager

CompareTokenStreams

VCLibrarianTool

UseUnicodeResponseFiles (GET &amp; SET)


Entradas (get)
LinkTimeCodeGeneration (GET & SET)

VCLinkerTool

AdditionalManifestDependencies (GET & SET)


AllowIsolation (GET &amp; SET)
AssemblyLinkResource (GET &amp; SET)
CLRImageType (GET &amp; SET)
CLRThreadAttribute (GET &amp; SET)
DelaySign (GET &amp; SET)
Driver (GET &amp; SET)
ErrorReporting (GET & SET)
GenerateManifest (GET &amp; SET)
KeyContainer (GET &amp; SET)
KeyFile (GET &amp; SET)
LinkLibraryDependencies (GET &amp; SET)
ManifestFile (GET &amp; SET)
Profile (GET &amp; SET)
ProfileGuidedDatabase (GET &amp; SET)
UseLibraryDependencyInputs (GET &amp; SET)
UseUnicodeResponseFiles (GET &amp; SET)

VCManagedResourceCompilerTool

AdditionalOptions (GET & SET)

VCManifestTool

Todos

VCNMakeTool

AssemblySearchPath (GET & SET)


CompileAsManaged (GET &amp; SET)

Visual Studio

361

ForcedIncludes (GET &amp; SET)


ForcedUsingAssemblies (GET &amp; SET)
IncludeSearchPath (GET &amp; SET)
PreprocessorDefinitions (GET &amp; SET)
VCPlatform

CommitChanges
DebuggerTool (get)
DefaultDirectory (get)
DeploymentTool (get)
DisableAlternateDebuggers (get)
DumpfileExtensions (get)
ExcludeDirectories (GET & SET)
ExecutableExtensions (get)
GeneralPageTool (get)
GetMacroValue
GetToolNameForKeyword
IsDumpfile
IsExecutable
NumberOfPlatformMacros (get)
PlatformMacro (get)

vcprojCATIDS

Todos

VCProject

AddToolFile
AssemblyOriginatorKeyFile (GET & SET)
AssemblyReferenceSearchPaths (GET &amp; SET)
DelaySign (GET &amp; SET)
ExcludedPermissions (GET &amp; SET)
FullPath (get)
GenerateManifests (GET & SET)
IncludeHeaderFile
LoadUserFile
MakeManagedDBConnection
ManagedDBConnection (GET & SET)
ManagedDBProvider (GET &amp; SET)
ManifestCertificateThumbprint (GET &amp; SET)
ManifestKeyFile (GET &amp; SET)

Visual Studio

362

ManifestTimestampUrl (GET &amp; SET)


RemoveToolFile
SaveUserFile
ShowAllFiles (GET & SET)
SignAssembly (GET &amp; SET)
SignManifests (GET &amp; SET)
TargetZone (GET &amp; SET)
ToolFiles (get)
VCProjectConfigurationProperties

OutputPath

VCProjectEngine

AddFakeProps
CreatePropertySheet
CreateToolFile
LoadPropertySheet
LoadToolFile
PropertySheets
RemovePropertySheet
ToolFiles (get)
ToolFileSearchPaths (GET &amp; SET)
ValidateSchemas (GET &amp; SET)

VCProjectReference

IsProjectLoaded

VCPropertySheet (VCStyleSheet anteriormente) BuildLogFile (GET & SET)


FileEncoding
ConfigurationType
ClearToolProperty
Salvar
UserMacros
AddUserMacro
RemoveAllUserMacros
VCReference

UseInBuild (GET & SET)


SET VCReferences ()
AssemblyName (get)
SubType (GET & SET)
UseDependenciesInBuild (GET &amp; SET)
CopyLocalDependencies (GET &amp; SET)

Visual Studio

363

CopyLocalSatelliteAssemblies (GET &amp; SET)


CopyLocal (GET &amp; SET)
VCReferences

Referncias (get)
AddAssemblyReferenceWithStrongName
CanAddAssemblyReferenceWithStrongName
AddProjectReferenceByIdentifier
CanAddAssemblyReferenceByIdentifier
AddReferenceToFile
CanAddReferenceToFile

VCRuntimeBooleanProperty

Todos

VCRuntimeEnumProperty

Todos

VCRuntimeEnumValue

Todos

VCRuntimeIntegerProperty

Todos

VCRuntimeProperty

Todos

VCRuntimeStringProperty

Todos

VCToolFile

Todos

VCUserMacro

Todos

VCXDCMakeTool

Todos

A seguir esto tipos e membros que foram removidos da Visual Studio 2005.
Nome Tipo

Membros excludo

genProxyLanguage enum

genProxyCs

pchOption enum

pchGenerateAuto

Enum RemoteDebuggerType

RemoteLocal
RemotePipe

runtimeLibraryOption enum

rtSingleThreaded
rtSingleThreadedDebug

VCActiveXReference

SET ControlGUID ()
SET ControlVersion ()
SET ControlLocale ()

VCAssemblyReference

SET RelativePath ()

VCAuxiliaryManagedWrapperGeneratorTool

Todos

VCCodeClass

AddEvent
Templateization (get)

VCCodeFunction

Templateization (get)

Visual Studio

364

VCCodeStruct

Templateization (get)

VCCodeUnion

Templateization (get)

VCCLCompilerTool

GlobalOptimizations (GET & SET)


ImproveFloatingPointConsistancy (GET &amp; SET)
OptimizeForProcessor (GET &amp; SET)
OptimizeForWindowsApplication (GET &amp; SET)

VCConfiguration

AppliedStyleSheets (GET &amp; SET)


BuildBrowserInformation (GET &amp; SET)
SET StyleSheets ()
ReferencesPath (GET & SET)
FullReferencesPath (get)
ReferenceTools (get)

VCDesignerReference

Todos

VCFileCodeModel

Sincronizar

VCFilter

Excluir

VCManagedWrapperGeneratorTool

Todos

VCPrimaryInteropTool

Todos

VCProjectConfigurationProperties

BuildBrowserInformation (GET &amp; SET)

VCProjectEngine

RemoveProject

VCProjectReference

NativeOutputForConfiguration
SET ReferencedProjectIdentifier ()
SET ReferencedProject ()

VCReference

BaseFileNameForConfiguration
BuildNumberForConfiguration
CultureForConfiguration
FullPathForConfiguration
MajorVersionForConfiguration
MinorVersionForConfiguration
Nome (set)
PublicKeyTokenForConfiguration
ReferenceConfigurations
ReferenceIsManaged
RevisionNumberForConfiguration
StrongNameForConfiguration

Visual Studio

365

VersionForConfiguration
VCReferenceconfiguration

Todos

VCStyleSheet (changed to VCPropertySheet

Plataforma
BuildBrowserInformation (GET &amp; SET)
ToolSet (GET & SET)
ReferencesPath (GET & SET)

A seguir esto tipos e membros que foram alterados no Visual Studio 2005.
Nome Tipo

Membros alterados

Alterao

compileAsManagedOptions enum managedAssembly

Era managedAssembly =
2

midlTargetEnvironment enum

midlTargetWin64 (midlTargetAMD64
agora)

Alterao de nome
membro

genProxyLanguage enum

genProxyManagedCpp
(genProxyManaged agora)

Alterao de nome
membro

pchOption enum

pchNone = 0

Era pchNone

IVCProjectEngineEvents

ItemPropertyChange

Parmetro adicionado

VCActiveXReference

WrapperTool

Era NonBrowsable

VCConfiguration

ManagedExtensions (GET & SET)

Parmetro digite
alterao

WholeProgramOptimization (GET &


SET)

Parmetro digite
alterao

VCCLCompiler

ExceptionHandling (GET & SET)

Parmetro digite
alterao

VCLinkerTool

LinkTimeCodeGeneration (GET & SET)

Parmetro digite
alterao

VCProjectConfigurationProperties WholeProgramOptimization (GET &


SET)

VCReference

Parmetro digite
alterao

ManagedExtensions (GET & SET)

Parmetro digite
alterao

BuildNumber

Alterao de nome de
parmetro

CopyLocal (GET &amp; SET)

Alterao de nome de
parmetro

Cultura

Alterao de nome de
parmetro

Descrio

Alterao de nome de
parmetro

FullPath

Alterao de nome de
parmetro

Identidade

Alterao de nome de

Visual Studio

366

parmetro

VCReferences

VCStyleSheet / VCPropertySheet

VCXMLDataGeneratorTool

Label

Alterao de nome de
parmetro

MajorVersion

Alterao de nome de
parmetro

MinorVersion

Alterao de nome de
parmetro

Nome (get)

Alterao de nome de
parmetro

PublicKeyToken

Alterao de nome de
parmetro

Referncia

Alterao de nome de
parmetro

RevisionNumber

Alterao de nome de
parmetro

StrongName

Alterao de nome de
parmetro

Version

Alterao de nome de
parmetro

AddAssemblyReference

Alterao de nome de
parmetro

AddActiveXReference

Alterao de nome de
parmetro

AddProjectReference

Alterao de nome de
parmetro

RemoveReference

Alterao de nome de
parmetro

Contagem

Alterao de nome de
parmetro

StyleSheetName (PropertySheetName
agora)

Alterao de nome de
parmetro

StyleSheetFile (PropertySheetFile agora)

Alterao de nome de
parmetro

AppliedStyleSheets
(InheritedPropertySheets agora)

Alterao de nome de
parmetro

ManagedExtensions

Parmetro digite
alterao

StyleSheetDirectory
(PropertySheetDirectory agora)

Alterao de nome de
parmetro

PropertySheet (get)

Alterao de nome de
parmetro

GeneratedProxyLanguage (GET & SET)


(now Namespace)

Alterao de nome
membro

Visual Studio

367

Prticas recomendadas para segurana na automao


Os desenvolvedores de automao Visual Studio devem compreender e aceitar a
responsabilidade de criao de aplicativos seguros por noes bsicas sobre
vulnerabilidades de segurana. Um aplicativo seguro protege a confidencialidade,
integridade, e disponibilidade de informaes a clientes '. Alm disso, protege a
integridade e disponibilidade de recursos de processamento, que controla
proprietrio ou administrador do sistema.
Para fins de discusso, uma vulnerabilidade de segurana uma falha em um
produto que permite um invasor mesmo quando o produto usado corretamente
para:

apropriado privilgios no sistema do usurio,

regular, alterar ou redirecionar sua operao,

comprometer seus dados,


- ou -

Suponha confiana ungranted.


Importante

Nunca pressupem que ser o aplicativo ser executado em alguns ambientes determinados, somente
especialmente se o aplicativo ficar muito popular. Possibilidade proporcional que ele ser usado em
outro, imprevistas, configurao. Suponha que seu cdigo ser executado nos ambientes hostis mais ser
em vez disso. Criar, gravar, e testar seu cdigo de acordo.
H benefcios para criar aplicativos seguros. Cdigo que inicialmente projetado e
criado com segurana em mente mais robusto que cdigo escrito com segurana
que adicionada como um afterthought. Aplicativos com segurana projetados so
tambm mais resistente a criticism de mdia, mais atraente para usurios, e menor
custo para corrigir e suporte.
APIs arriscada
Algumas funes API podem ser consideradas mais arriscadas que outros do ponto
de vista de segurana. Alguns podem estar inerentemente arriscada na forma que
eles funcionam. Outras pessoas podem ser arriscadas se no chamado ou
manipulados corretamente. O ponto que voc deve estar familiarizado com as
armadilhas e quirks das vrias funes API voc chamar, e se eles representam
qualquer classificao de risco de segurana, assegurar que elas so usadas
corretamente.
Alm disso, alm disso, no assumir que como seu cdigo usa somente funes de
API que so consideradas " seguros " que seu aplicativo automaticamente segura
e protegida, bem.., bem Negligent prticas de programao podem expor seu
aplicativo para como risco ou muito mais do que usar funes supposedly "
perigosas ". Tais prticas podem incluir:

No tratamento excees corretamente,

Usando caminhos embutidas,

Utilizando seqncias de conexo embutidas,

Visual Studio

368

- ou

No verificando credenciais de usurio correta ou permisses.

Completamente para proteger seus aplicativos, voc deve entender questes de


segurana de cdigo por pesquisar o assunto. O livro da Microsoft Press, Writing
Secure Code, e o site diretrizes codificao de segurana em
http://msdn.microsoft.com/library/default.asp?url=/library/enus/dnnetsec/html/seccodeguide.asp so recursos boas.
Outro ponto importante para compreender que muitos problemas de segurana
resultar de aplicativos que blindly confiam entrada dados. essencial que os
aplicativos cuidadosamente examinar e avaliar dados como ele recebido para
verificar se os dados vlido e confivel antes de us-lo.
Recursos de segurana de automao
Alm de seguir estas diretrizes, Visual Studio automao oferece algumas maneiras
simples e especficos para ajud-lo a proteger seu sistema de automao
exploitations de segurana. Lembre-se, entretanto, que eles so no um panacea
de todos problemas de segurana. Em vez disso, eles so um bom comeo. Para
informaes, consulte Add-in de segurana.
Pesquise e seguir diretrizes de segurana .NET cuidadosamente antes de criar seus
aplicativos de automao.
Consulte tambm

O espectro de automao Visual Studio


oferece Visual Studio trs nveis diferentes de extensibilidade:. Macros,
suplementos e assistentes, e o Visual Studio Industry Partner (VSIP) program
Macros
Macros so a maneira mais fcil para estender (IDE) o Visual Studio ambiente de
desenvolvimento integrado com o cdigo. No somente eles fornecem um aumento
grande de produtividade permitindo que voc para registrar vrias aes no IDE e
execut-las novamente como um nico comando, elas tambm permitem que voc
para saber os Visual Studio modelos automao durante a gravao macros.
Macros tambm oferecem um ambiente de desenvolvimento Full-fledged chamado
o IDE macros que seja baseado em Ide Visual Studio. Ele usa o Visual Basic
idiomas e usado para criar, editar e depurar macros. Para obter mais informaes
sobre macros, consulte Automatizar aes Repetitive usando macros.
Os suplementos e assistentes
Os suplementos so aplicativos tempo-economia labor e anexar a e so usados
dentro do Visual Studio ambiente de desenvolvimento integrado (IDE). Do EnvDTE
so objetos COM que implementam a IDTExtensibility2 interface e se comunicar
com o IDE atravs do modelo de objeto de automao principal que est contido
em, e EnvDTE80 montagens. O modelo de ferramentas esto contido no
Microsoft.VisualStudio.CommandBars.
As linguagens de programao vrios em Visual Studio fornecem objetos de
automao adicionais por seus prprios conjuntos. As montagens de automao
especficas projeto so:
Nome do conjunto

Descrio

VSLangProj

Visual BasicVisual C# e Visual J# projeto modelo de


automao.,

Visual Studio

369

VSLangProj2

Visual BasicVisual C# e Visual J# projeto modelo de


automao.,

VSLangProj80

Visual BasicVisual C# e Visual J# projeto modelo de


automao.,

Microsoft.VisualStudio.VCCodeModel

Modelo de automao de cdigo Visual C++.

Microsoft.VisualStudio.VCProject

Projeto Visual C++ Modelo de automao.

Microsoft.VisualStudio.VCProjectEngine Projeto Visual C++ Modelo de automao.


Microsoft.VisualStudio.VsWizard

Modelo de automao Assistente Visual C++.

Como Add-ins so cdigo compilado, binrio, sua propriedade intelectual


protegida. Voc pode implementar Add-ins em qualquer idioma consuming com tal,
Visual C# como Visual C++, Visual Basic e assim por diante.
Para a maioria dos desenvolvedores, as macros so suficientes para programao
com o Visual Studio modelo de automao. Em alguns casos, entretanto, add-ins
pode ser prefervel para desenvolvedores, como os ISVs, que deseja perfeitamente
adicionar todos recursos novos ao IDE. Add-ins cabe esses recursos na IDE Visual
Studio como se fossem internos.
Add-ins tambm permite que sejam fazer algumas coisas que no podem macros.
Usando suplementos, voc pode:

Hospedar sua ferramenta de uma menu ou barra de ferramentas no IDE.


Isso permite que voc para facilmente acess-lo enquanto voc est
programando.

Criar pginas de propriedades personalizadas para a Options caixa de


dilogo no menu Tools.
Para obter mais informaes, consulte Como criar pginas opes ferramentas
personalizadas:.

Criar janelas de ferramentas que agem como Visual Studio janelas de


ferramentas.
Para obter mais informaes, consulte Criando e Controlling ambiente
Windows.

Ativar e desativar comandos de menus e a Visual Studio barra de comando


dinamicamente.
Para obter mais informaes, consulte Como Adicionar e identificador
comandos:.

Adicionar contato e informaes descritivas a ajuda sobre a Visual Studio


Caixa.

Assistentes so aplicativos que levar usurios atravs de um processo de criao


programas ou realizar tarefas de programao que so mais difceis ou complicado
que usual Instrues passo. Por exemplo, Visual Studio oferece o assistente
suplemento para ajudar os usurios criar um projeto Add-In e projeto de
implantao. Voc pode criar seus prprios assistentes criando um projeto que
implementa a IDTWizard interface. Do New Project assistentes so geralmente
chamados atravs de ou New File caixas de dilogo.
Programa Partner (VSIP) Industry Studio Visual

Visual Studio

370

Para a maioria dos usurios, macros, add-ins, e assistentes atender maioria de


suas necessidades em Visual Studio. Entretanto, alguns usurios, precisar ir alm
os recursos do modelo Visual Studio de automao considerveis. Por exemplo, um
usurio pode querer incorporar um totalmente nova linguagem de programao ao
IDE Visual Studio, possivelmente criar uma necessidade de:

Um novo tipo de projeto.

Um editor personalizado.

Depurao recursos avanados.

O Visual Studio Industry Partner (VSIP) program foi criado para voc pode fazer
isso. VSIP fornece a ferramentas e informaes necessrias para integrar o
produtos para o Visual Studio ambiente. VSIP, que uma coleo de SDKs, um
conjunto do desenvolvedor e plataforma. Ele fornece parceiros VSIP controle
maiores e mais ampla sobre o IDE, fornecendo acesso a mais interfaces e Total
Visual Studio Integrao ajuda. Parceiros com VSIP, podem fornecer maior
funcionalidade em ambiente de criao seus usurios '. Para obter mais
informaes, pesquise a ajuda para Visual Studio Industry Partner (VSIP) program,
ou visite o site VSIP em http://msdn.microsoft.com/vstudio/Extend.

Escolhendo a abordagem de automao adequada


Fornece Visual Studio vrias opes para criar aplicativos de automao. No
entanto, o mtodo exato deve escolher, depender basicamente na tarefa iminente.
Para ajudar a orient-lo para o mtodo melhor, considere os seguintes fatores.
Voc deseja distribuir o cdigo ou um aplicativo compilado?

Usar Distribuir cdigo uma macro. Voc pode implantar macros,


copiando arquivos do projeto uma macro para o novo local. No h nenhuma
configurao ou o registro, mas usurios de sua macro dever clique no Tools
menu, aponte para Macros, e, em seguida, clique Load Macro Project Para
iniciar us-los. Voc tambm pode enviar uma macro como texto para uso por
outros usurios. Para obter mais informaes, consulte Como gravar macros:.

Usar Distribuir um aplicativo compilado um suplemento ou um


assistente, ou um aplicativo que usa as interfaces de automao. Os
suplementos, assistentes e outros aplicativos que usam as interfaces de
automao proteger sua propriedade intelectual a compilao. No entanto, para
distribu-los, voc deve usar um projeto de implantao ou alguma outra forma
de instalao. Para obter mais informaes, consulte Como criar um add-in: ou
Passo-a-passo: Criando um assistente.

Linguagem de programao que voc deseja usar para desenvolver o aplicativo


de automao?

Voc Visual Basic pode criar macros, suplementos, ou assistentes. Para


obter mais informaes, consulte Automatizar aes Repetitive usando macros
ou Criando Add-ins e assistentes.

Voc Outros idiomas pode criar os suplementos e assistentes, usando a


IDTExtensibility2 interface e a IDTWizard interface. Voc deve ser capaz para
implementar um objeto com able CoCreate-na linguagem de programao.
A tarefa requer entrada do usurio?

Uma Nenhuma entrada de usurio necessrio macro ou add-in


adequado. Para obter mais informaes, consulte Automatizar aes Repetitive
usando macros ou Criando Add-ins e assistentes.

Visual Studio

371

Uma Entrada simples macro, Add-in, ou assistente adequado.


Se Entrada complexas a entrada tem vrias etapas ou Exigir
verificao, um assistente pode ser mais apropriado.
Como complicada a tarefa voc estiver automatizando?

Se Muito simples voc pode realizar a tarefa na apenas algumas linhas


de cdigo, uma macro apropriada.

Enquanto Complicado macros podem incluir formulrios, referncias, e


classes, um suplemento ou assistente pode ser mais apropriado.
Como voc acha que o usurio ser iniciado o aplicativo?

Usar Menus ou barras de comando um suplemento.

Usar Um atalho de teclado ou o Explorer macro uma macro.

Usando Novo projeto ou item novo item de menu um assistente


caracterstico para adicionar um novo projeto ou arquivo para um aplicativo.
O que o tempo de vida de seu aplicativo?

Uma Preciso apenas de hoje macro gravada temporria pode ser


suficiente.

Uma Eu vai ser usando ele tempo term macro, assistente, ou add-in
adequado.
O que voc precisa desenvolver?

Macros Uma tarefa automatizada , suplementos, e assistentes todos


podem ser usados para automatizar tarefas. Para obter mais informaes,
consulte Automatizar aes Repetitive usando macros ou Criando Add-ins e
assistentes.

Adicionar Pginas de propriedades personalizadas para as


ferramentas, caixa de dilogo Opes -. ins e assistentes suporte a essa
funcionalidade Para obter mais informaes, consulte Como criar pginas
opes ferramentas personalizadas:.

Adicionar Ferramenta ou documento janela personalizadas -. ins e


assistentes suporte a essa funcionalidade Para obter mais informaes,
consulte Como ferramenta Windows criar e controlar:.

Become Um novo tipo de projeto um parceiro VSIP. Para obter mais


informaes, consulte http://msdn.microsoft.com/vstudio/Extend.

O suporte para um novo idioma de programao no Visual Studio ou


um novo editor Become a VSIP partner.

Funcional grupos de automao


O modelo de objeto de automao consiste expansivas grupos funcional de objetos
de alguns,. Esses objetos controlar principais aspectos do ambiente de
desenvolvimento integrado (IDE) e aplique a todos os tipos de projeto em Visual
Studio. Noes bsicas sobre como esses grupos funcionam torna mais fcil para
compreender e usar o modelo.
Os objetos nesses grupos funcional totalmente so descritos no Grfico do modelo
de objeto de automao. Os grupos so:

Visual Studio

372

Soluo, projeto, e objetos item projeto.

Criar objetos.

Cdigo objetos Editor.

Cdigo objetos de manipulao definio.

Ferramenta janela e documente objetos de manipulao.

Ferramenta especficas janela-objetos, tais como a Task List, Output


janela, e Toolbox.

Comandos objetos.

Depurao objetos.

Objetos de tratamento de eventos.

Cada grupo funcional consiste de um ou mais relacionados objetos, colees, ou


interfaces que contribuem para uma finalidade especfica. Por exemplo, a funo
primria do grupo objetos do evento para fornecer acesso a eventos que ocorrem
no IDE Um tal objeto do grupo o TaskListEvents objeto, que permite que voc
para responder a eventos que ocorrem no Task List. Outra nesse grupo o
BuildEvents objeto, que permite que voc para responder a eventos que ocorrem
em uma operao de criao, como o incio ou concluso de uma compilao.
Modelos de automao especficas projetoAlm para o modelo de automao " principal " ento chamado, porque ele
Qualquer Visual Studio idioma pode cada idioma em Visual Studio oferece um ou
mais automao especficas projeto-modelos para acessar seus recursos especiais.
Para Visual Basic, Visual C# e Visual J# projetos, esse modelo est localizado nos
seguintes conjuntos:

VSLangProj,

VSLangProj2

VSLangProj80

Para obter mais informaes sobre essa funcionalidade, consulte Introduo


extensibilidade de projeto.
Para Visual C++, os conjuntos so:

Microsoft.VisualStudio.VCCodeModel

Microsoft.VisualStudio.VCProject

Microsoft.VisualStudio.VCProjectEngine

Microsoft.VisualStudio.VsWizard

Eles representam (respectivamente), o Visual C++ modelo cdigo especfico, o


Visual C++ modelo de projeto, e o Visual C++ modelo Assistente.
Consulte tambm

Acessando o modelo de automao por usando macros


Macros Visual Studio so uma maneira excelente para facilmente obter acesso aos
diversos Visual Studio modelos de automao. Use-los para criar ferramentas-com
base Automation para uso em Visual Studio.
Rpido e fcil de Use

Visual Studio

373

Macros so criadas, executado, e depurado em seu prprio ambiente separado,


(IDE) o ambiente de desenvolvimento integrado macros. Conseqentemente, fcil
para executar e depurar o cdigo de automao nele, contra o IDE principal, sem
iniciar outra instncia do Visual Studio.
Como referncias para as bibliotecas de automao Principal. (EnvDTE) j so
fornecidos, imediatamente para comear escrever cdigo direita aps iniciar o IDE
macros e EnvDTE80
Macros so tambm uma maneira excelente para criar ferramentas de automao
rpido, disposable para ajudar a automatizar um processo repetitivo, ou ainda mais
sofisticadas ferramentas Automao. Para obter mais informaes sobre como
criar, usando, e depurao macros, consulte Automatizar aes Repetitive usando
macros.
Consulte tambm

Criando Add-ins e assistentes


Embora Visual Studio alguns desenvolvedores exigir um nvel de controle adicionais
ou maiores. oferece vrias ferramentas e a energia para executar quase cada
tarefa, os desenvolvedores Por exemplo, eles podem ter uma tarefa ou srie de
tarefas que executar regularmente e gostaria de automatizar. Para resolver esse
problema, Visual Studio recursos um Rich programao modelo, conhecido como o
modelo de automao, para estender e automatizar o IDE (ambiente de
desenvolvimento integrado). O modelo Automao fornece a capacidade de
automatizar o ambiente e fornecer extenses e novos recursos a ela.
Para saber mais sobre

Consulte

Gravao e execuo macros

Automatizar aes Repetitive usando


macros

As trs maneiras para acessar Visual Studio Automao

O espectro de automao Visual Studio

Grupos functional de objetos no modelo de objeto de


automao

Funcional grupos de automao

Como criar Add-ins

Como criar um add-in:

Como referncia espao para nome EnvDTE e obter uma


instncia do objeto DTE

Referncia conjuntos de automao e o


objeto DTE2

Registrar um suplemento

Add-in de registro

Como limitar o acesso a arquivo de Registro Xml.AddIn do


seu projeto

Add-in de segurana

Expor Add-ins nos menus e barras de ferramentas

Exibindo Add-ins em barras de


ferramentas e menus

Conectando Add-ins a teclas de atalho

Comandos Suplemento de ligao para


chaves

Novas alteraes na funcionalidade barra de comando

Alteraes CommandBar para o Visual


Studio 2005

Como restaurar comandos que desaparecem de um menu

Como restaurar comandos suplemento para


o menu:

No ambiente carregando, descarregando, e controlar Add-ins HOW TO: com o Gerenciador de


Suplementos controle Add-ins

Visual Studio

374

Depurao Add-ins

Depurao Walkthrough: um projeto Addin

Criando um assistente

Passo-a-passo: Criando um assistente

Iniciar assistentes programaticamente

Parmetros de contexto para Launching


assistentes

Arquivos do assistente (.vsz)

Configurando Arquivos VSZ para iniciar


assistentes

Arquivos VSDir, a Add Item e New Project caixas de


dilogo e como elas afetam

Adicionando assistentes para a Adicionar


Item e novas caixas de dilogo Project
usando arquivos VSDir

Como criar uma nova instncia de Visual Studio forma


Como criar e anexar a outra instncia do
programtica ou anexar a uma instncia especfica de Visual Visual Studio:
Studio que j est executando
Como atualizar projetos de automao das verses
anteriores do Visual Studio para Visual Studio 2005.

Migrando e atualizando Add-ins do Visual


Studio .NET 2003 para o Visual Studio
2005

Referncia conjuntos de automao e o objeto DTE2


Para criar aplicativos de automao, voc deve executar etapas para obter acesso a
membros de automao. Primeiro, voc deve fazer referncia os conjuntos de
automao necessrios, e Segundo, voc deve obtm uma referncia para o objeto
DTE2 de nvel superior.
No Visual Studio .NET 2002 e Visual Studio .NET 2003, todos os itens de automao
principais estavam localizados em um conjunto nomeado EnvDTE, e seu objeto
maior, hierrquica o DTE objeto. Ele o objeto pai para todos os objetos de
automao principais, colees, e seus membros. Derivar DTE2 de DTE.
Para Visual Studio 2005, adies e atualizaes foram feitas para alguns desses
objetos, colees, e membros. Em vez de atualizar o conjunto existente e
comprometer compatibilidade com verses-para existente Add-ins e projetos de
automao, novo e atualizado toda funcionalidade est em um conjunto chamado
EnvDTE80 (EnvDTE verso 8.0). Mais funes atualizadas no EnvDTE80 manter os
mesmos nomes que verses anteriores mas acrescentar o nmero 2 ao nome da
funo. Por exemplo, a nova verso da coleo TaskItems denominada
TaskItems2, e a nova verso do objeto Solution chamada Solution2. Como os
novos membros so mais robusta que verses anteriores e contm a funcionalidade
mais recente, a abordagem recomendada para usar os novos objetos e colees
ao escrever novos aplicativos de automao. Para obter uma lista completa dos
novos objetos e colees, consulte Novos membros de automao para Visual
Studio 2005.
Embora novos itens sejam no EnvDTE80, a maior parte da funcionalidade de
automao do principal ainda em EnvDTE. Assim, quando voc escrever novos
aplicativos de Automao (como os suplementos), certifique-se referncia ambos
EnvDTE e EnvDTE80. Para fazer isso em uma etapa fazendo referncia a
biblioteca COM. " Ambiente de desenvolvimento Microsoft 8.0 ". Alm disso, se
voc usar membros do conjunto EnvDTE, precisar tambm definir uma referncia
ao tanto o DTE objeto e o DTE2 objeto. Isso fornece acesso a todos os itens.
Para obter informaes sobre ganhar acesso aos modelos de objeto especficos
projeto-, consulte Funcional grupos de automao.

Visual Studio

375

Nesta seo
Como adicionar referncias a EnvDTE e Namespaces EnvDTE80:
Demonstra como adicionar referncias para os espaos para nome
apropriado.
Erro usando EnvDTE com conjuntos VSLangProj
Descreve um possvel erro voc pode receber quando um projeto usa o
EnvDTE conjunto e uma ou mais dos VSLangProj conjuntos.
Como obter referncias a do DTE e objetos DTE2:
Demonstra como obter referncias aos objetos apropriados.
Anexar a instncias especficas do IDE
Fornece informaes sobre como fazer referncia uma instncia especfica de
(IDE) o ambiente de desenvolvimento integrado.
Sees relacionadas
Grfico do modelo de objeto de automao
Fornece um mapa grfico a todos os componentes compartilhados do modelo
de objeto de automao.
Criando Add-ins e assistentes
Fornece informaes bsicas sobre como criar suplementos e assistentes no
Visual Studio.

Controlar projetos e solues


O Visual Studio modelo de automao fornece objetos e colees que permitem que
voc para controlar a soluo, projetos, e os itens de projeto dentro do projeto,
independentemente da linguagem de programao na qual o aplicativo foi escrito.
Este ncleo, modelo de automao projeto agnostic idioma, alm de cada idioma
programao possui seu prprio modelo de automao do projeto que fornece
acesso a recursos exclusivos para esse idioma.
Objetos e colees

O Solution2 objeto e a Projects coleo e Projects. () contenha, uma


referncia para a soluo, bem como referncias a todos os projetos nessa
soluo, respectivamente que retornado pelo Projects

A ProjectItems coleo representa todos os itens contidos em um projeto


(Project. com exceo dos projetos virtuais), O ProjectItem objeto representa
itens individuais dentro do projeto.

Um projeto virtual uma que no est associado a um projeto especfico mas est
associado a soluo em vez disso. Uma soluo pode conter dois projetos virtuais
adicionais: a itens soluo e os projetos Miscellaneous arquivos.
Para saber mais sobre

Consulte

Controlando a soluo, e
projetos na soluo.

Controlar a soluo e seus projetos

Como programaticamente
criar soluo e projeto
configuraes de

Como criar solues e configuraes construir Project:

Visual Studio

376

compilao.
Lidando com projetos que
no oferecerem suporte o
Visual Studio modelo de
automao.

Unmodeled Overview de projetos

Trabalhando com os
projetos virtuais itens
Solution e itens
Miscellaneous projetos.

Trabalhar com itens Solution e itens Miscellaneous

Salvando soluo e projeto Persisting informaes nos projetos e solues


varivel valores entre
sesses IDE (ambiente) de
desenvolvimento
integrado.
Manipular Solution
Explorer.

HOW TO: controle Solution Explorer

Controlando Visual Basic,


Visual C#,. e Visual J#
projetos

Introduo extensibilidade de projeto

Controle Visual C++


Projetos.

e
Microsoft.VisualStudio.VCProjectMicrosoft.VisualStudio.VCProjectEngine.

Criando e Controlling ambiente Windows


O Visual Studio IDE (ambiente de desenvolvimento integrado) composto de vrias
janelas de ferramentas. Uma janela ferramenta uma janela criado por Visual
Studio, ou um que pode ser manipulado pelo Visual Studio Automao. O Visual
Studio modelo de automao permite que voc se manipular suas janelas e em
muitos casos, seu contedo. Por exemplo, a janela ferramentas representada pelo
objeto ToolBox,, bem como a ToolBoxTabs. e ToolBoxItems Colees Voc pode
usar seus membros para adicionar e remover guias e itens ferramentas. Voc
tambm pode criar suas prprias janelas de ferramentas para atender seu contedo
personalizado.
Enquanto algumas janelas ferramenta, como Solution Explorer e a Class View
janela ferramenta, no faa tm recursos de automao explcitas, voc pode
manipular as janelas prprios ainda. Solution Explorer uma janela ferramenta
no IDE Visual Studio que exibe uma imagem de sua soluo e seus projetos e seus
itens de projeto fsico, com base em arquivo. Como qualquer outra janela
ferramenta no Visual Studio, voc pode controlar seus parmetros fsicos, como
tamanho, local, e se ele est ancorada ou Free-floating. Class View uma janela
que exibe os smbolos ferramenta definido, referenciado ou chamado no aplicativo
que esteja desenvolvendo. Para informaes, consulte Como alterar caractersticas
da janela:.
Para saber mais sobre

Consulte

Alterar as caractersticas fsicas de uma janela ferramenta,


como sua altura, largura, e assim por diante.

Como alterar caractersticas da janela:

Manipular cdigo fonte e texto no editor do cdigo.

Como controlar o editor de cdigo (Visual


Basic):

Visual Studio

377

Automatizar operaes de pesquisa e substituio no Editor Como pesquisar e substituir automatizar


do cdigo.
texto:
Manipular Solution Explorer e seu contedo.

HOW TO: controle Solution Explorer

Usando o Visual Studio modelo de cdigo para descobrir


cdigo.

Descobrir Cdigo com o modelo de cdigo


(Visual Basic)

Manipular a Output janela e seu contedo.

Como controlar a janela de sada:

Alterar as configuraes na caixa Options de dilogo no


menu Tools.

Controlar configuraes opes ferramentas

Do Toolbox manipular e seu contedo.

Como controlar a caixa de ferramentas:

Do Task List manipular e seu contedo.

Como controlar a lista de tarefas:

Manipular a Command janela e seu contedo.

Como controlar a janela de comando:

Manipulao da Dynamic Help janela e afetar atributos.

Como controlar a janela da Ajuda dinmico:

Manipular a gravao de macros a partir de um suplemento. Como usar Add-ins para macros de
controle:
Controlando modos de exibio de rvore em janelas de
ferramentas usando o UIHierarchy objeto.

HOW TO: Manipulate modos de exibio


da rvore usando UIHierarchy

Criar e manipular janelas de ferramentas.

Como ferramenta Windows criar e


controlar:

Como criar e anexar a outra instncia do Visual Studio:


Em alguns casos til para criar uma nova instncia de Visual Studio forma
programtica ou anexar a uma instncia especfica de Visual Studio que j est
sendo executado. Se duas instncias da Visual Studio estiver executando em um
sistema e ter a mesma soluo abrir por exemplo, uma instncia est
executando uma compilao de soluo e o outro executar uma compilao de
depurao voc pode programar o suplemento para diferenci-las.
Voc pode, por exemplo:

Iniciar uma ocorrncia Visual Studio com base em um caminho para um


arquivo ou soluo.

Anexar a uma instncia Visual Studio com base em um caminho para um


arquivo ou soluo.

Carregar um arquivo ou soluo em uma instncia existente do Visual


Studio.

Criar uma nova instncia de Visual Studio onde a instncia desligado


quando:

A contagem de referncia externa em ambos o DTE objeto e o


Solution objeto so 0.
e-

O ambiente de desenvolvimento integrado (IDE) no exibida para


o usurio ou no est sob controle de usurio.

Criar uma nova instncia de Visual Studio onde a instncia permanece


carregada mesmo quando:

Visual Studio

378

A contagem de referncia externa em ambos o DTE objeto e o


Solution objeto so 0.
O IDE ser exibido para o usurio.

eO IDE est sob controle de usurio.

Os objetos retornados podem ser convertidos em seus objetos respectivos, tais


como DTE2 e Solution2.
Observao
As caixas de dilogo e comandos de menu que voc v podem ser diferentes das descritas em Help
(Ajuda) dependendo das configuraes ativas ou edio. Esses procedimentos foram desenvolvidos com
as configuraes Development geral ativo. Para alterar as configuraes, escolha Import e Export
Settings no menu Tools. Para obter mais informaes, consulte Configuraes do Visual Studio.
Exemplo
Para criar uma nova instncia do Visual Studio, use um ou
System.Activator.CreateInstance. o Funo CreateObject (Visual Basic) Ao usar a
CreateObject funo no Visual Basic, voc pode passar valores de um
"VisualStudio.DTE.8.0" ou "VisualStudio.Solution.8.0." os exemplos abaixo
ilustrar esses mtodos trs.
C#
// Create a new instance of Visual Studio by using
// GetTypeFromProgID and CreateInstance.
private void CreateNewInstance1()
{
System.Type type = System.Type.GetTypeFromProgID
("VisualStudio.DTE.8.0");
Object obj = System.Activator.CreateInstance(type, true);
EnvDTE80.DTE2 dte8Obj = (EnvDTE80.DTE2)obj;
}

No exemplo Visual Basic, ambas as instrues criar uma nova instncia de IDE
Visual Studio. A primeira instruo diretamente cria uma nova instncia enquanto a
segunda instruo cria uma nova instncia, criando uma nova soluo.
Para obter uma referncia a uma instncia existente do IDE Visual Studio, voc
pode usar o Funo GetObject (Visual Basic). Voc pode siga um destes
procedimentos:
Visual Basic
Private Sub GetInstance1 ()
Dim inst As Object
Dim dte80Obj As EnvDTE80.DTE2
inst = Microsoft.VisualBasic.Interaction.GetObject(, _
"VisualStudio.DTE.8.0")
dte80Obj = CType(inst, EnvDTE80.DTE2)
MsgBox(dte80Obj.DisplayMode.ToString)
End Sub
' -orDim inst As Object
inst = Microsoft.VisualBasic.Interaction.GetObject(, _
"VisualStudio.Solution.8.0")
' --------------------------' -or' Change the path to your application.
Dim inst As Object
inst = Microsoft.VisualBasic.Interaction.GetObject _

Visual Studio

379

("C:\Projects\WindowsApplication1\WindowsApplication1.sln")
' --------------------------' -or' Change the path to your application.
Dim inst As Object
inst = Microsoft.VisualBasic.Interaction.GetObject _
("C:\Projects\WindowsApplication1\WindowsApplication1.sln", _
"VisualStudio.Solution.8.0")

Estendendo o ambiente Visual Studio


Embora Visual Studio voc talvez precise um nvel de controle adicionais ou
maiores. oferece vrias ferramentas e a energia para executar quase cada tarefa,
Por exemplo, convm automatizar uma tarefa ou uma srie de tarefas que voc
executar regularmente. Ou voc pode ter criado ferramentas que voc deseja usar
no ambiente Visual Studio de desenvolvimento integrado (IDE).
Para resolver esses problemas, Visual Studio Rich modelos de programao
conhecidos como os modelos de objeto de automao, para estender e automatizar
o IDE recursos. Os modelos automao vrios fornecem a capacidade para
automatizar o ambiente e fornecer extenses e novos recursos a ela. Cada modelo
concentrates a uma rea especfica do IDE, como as janelas ferramenta, o editor de
cdigo, vrios projetos, e assim por diante.
As sees abaixo apresentar a voc para automao e extensibilidade e mostram
como us-los para facilitar a programao.
Nesta seo
O que h de novo no extensibilidade e automao do Visual Studio 2005
Descreve as atualizaes e melhorias de extensibilidade e automao os
modelos em Visual Studio 2005 Vrios.
Novos membros de automao para Visual Studio 2005
Lista os novos tipos especficos e membros em Visual Studio 2005 Destaque.
Prticas recomendadas para segurana na automao
Fornece conselhos para ajudar voc segura Visual Studio e os aplicativos de
automao.
O espectro de automao Visual Studio
Descreve os tipos de projetos de automao disponveis para voc em Visual
Studio: macros, add-ins e assistentes e VSIP.
Escolhendo a abordagem de automao adequada
Ajuda voc a escolher as ferramentas mais eficientes para usar para realizar
suas tarefas de automao.
Funcional grupos de automao
Lista as diversas reas de Visual Studio que pode ser automatizada.
Acessando o modelo de automao por usando macros
Ilustra como programa contra os diversos modelos de automao usando
macros.
Criando Add-ins e assistentes
Descreve os conceitos de automao e extensibilidade,, bem como os
fundamentos de como criar suplementos e assistentes.
Referncia conjuntos de automao e o objeto DTE2

Visual Studio

380

Fornece detalhes sobre como usar as ferramentas fundamentos de


automao.
Controlar projetos e solues
Ilustra como controlar projetos e solues usando Visual Studio objetos de
automao, como salvar variveis entre sesses IDE; como para trabalhar
com itens de soluo, diversos itens, e unmodeled projetos; e como criar
configuraes de soluo.
Criando e Controlling ambiente Windows
Explica como criar e controlar janelas de ferramentas, alterar caractersticas
janela, automatizar pesquisa de texto e substituir, controlar macros,
controlar configuraes opes ferramentas, descobrir Cdigo com o modelo
de cdigo, e manipular modos de exibio de rvore, usando UIHierarchy.
Como criar e anexar a outra instncia do Visual Studio:
Explica como criar uma nova instncia do Visual Studio ou anexar a um
arquivo existente.
Respondendo a eventos de automao
Demonstra como usar o Visual Studio modelo de automao para manipular
eventos que ocorrem no ambiente.
Como Adicionar e identificador comandos:
Explica como criar e manipular comandos em Visual Studio Menus ou barras
de ferramentas usando o Visual Studio modelo de automao.
Criando DLLs satlite Managed Walkthrough:
Fornece informaes sobre como criar satlite DLLs, que pode conter
recursos para uso em seus aplicativos de automao.
Implementar e usando Extenders de automao
Explica como adicionar e filtrar propriedades em objetos usando Extenders
Automao.
Sees relacionadas
Personalizar o ambiente de desenvolvimento
Demonstra como personalizar barras de ferramentas, teclas de atalho, e
outros Visual Studio itens.
Automatizar aes Repetitive usando macros
Explica como criar e usar macros para automatizar aes no Visual Studio.

Macros do Visual Studio


Uma macro uma srie de comandos e instrues que voc agrupa como um nico
comando para realizar uma tarefa automaticamente. Macros permite que sejam
automatizar aes repetitivas. Inclui Visual Studio o ambiente de desenvolvimento
integrado macros (IDE), que usado somente para criar, manipular, editar, e
execute macros. O IDE de Macros separado do IDE Visual Studio.
Nesta seo
Como gravar macros:
Descreve como criar e gravar macros.

Visual Studio

381

HOW TO: executar macros


Aborda vrias maneiras de executar macros e passar parmetros.
Gravao de Macro e executando questes
Oferece solues para problemas normalmente encontrados na gravao e
execuo macros.
Como gerenciar macros:
Descreve como editar uma macro existente ou criar um novo arquivo
manualmente.
Depurar macros
Descreve o que fazer quando ocorrem erros em suas macros.
Como gerenciar macros:
Descreve o Explorer macros e seus menus de contexto.
Salvar e exportando arquivos macros
Descreve como salvar e exportar arquivos macro no IDE de Macros.
Diferenas funcionalidade entre Macros do Visual Studio e Visual Studio
Descreve diferenas no modelo de extensibilidade, Document objeto,
propriedades, operao item, o Find mtodo, projetos, e Ferramentas
Opes entre Visual Studio macros e Visual Studio.
Como referncia com e componentes .NET Framework em macros:
Descreve como habilitar Visual Studio macros para referncia componentes
COM usando o utilitrio TLBIMP.
HOW TO: identificador eventos de ambiente em macros
Discute o modelo EnvironmentEvents, o OnMacrosRuntimeReset evento e
o OnStartupComplete evento.
Segurana macros e compartilhamento questes
Aborda as questes de segurana principal sobre macros: Proteo de
propriedade intelectual, e preveno de vrus e proteo.
Exemplos macros
Lista e descreve as macros amostras includas Visual Studio.
Sees relacionadas
Automatizar aes Repetitive usando macros
Fornece uma viso geral sobre como usar macros para automatizar
procedimentos ou seqncias repetidas de pressionamentos de teclas.
Ambiente de Desenvolvimento macros
Descreve todas as caixas de dilogo do IDE de Macros.
Macros
Fornece detalhes sobre o Macros objeto, que representa o Visual Studio
Gravador de macro.
Mensagens de erro Macros do Visual Studio
Lista todas as mensagens de erro associadas a Visual Studio macros.

Visual Studio

382

Como usar Add-ins para macros de controle:


Descreve como usar objeto o Visual Studio do modelo Macros de automao
para macros de controle sendo registradas no IDE, incluindo pausar e
reativar o gravador, escrever cdigo para a macro sendo gravadas, e
determinar se o gravador est funcionando no momento.
Consulte tambm

Introduo extensibilidade de projeto


O modelo de objeto est disponvel simplesmente, adicionando uma referncia para
os conjuntos VSLangProj.dll, VSLangProj2.dll e VSLangProj80.dll a qualquer
projeto. Para obter mais informaes, consulte COMO: Adicionar ou remover
referncias no Visual Studio.Isso significa que o modelo de objeto est disponvel
para Macros, suplementos, e qualquer tipo de projeto que precisa para estender ou
automatizar o IDE. Macros so gravadas no ambiente de desenvolvimento
integrado macros usando Visual Basic. Do Visual Basic nos tpicos Os exemplos so
gravados em e Visual C# idiomas. Para obter mais informaes sobre como
executar os exemplos, consulte Como compilar e executar objeto automao os
exemplos cdigo do modelo:. Add-ins pode ser gravados em qualquer um dos
idiomas .NET,, Visual C++ incluindo Visual C#Visual Basic. e Visual J# Os tpicos
de referncia para e VSLangProj80 membros incluir a sintaxe para cada um desses
idiomas. o VSLangProj, VSLangProj2 Para obter uma descrio dos tipos do projeto
de automao e recursos de automao, consulte Criando Add-ins e assistentes.
VSLangProj, VSLangProj2 e Namespaces VSLangProj80
Esses espaos para nome contm todos os as classes, interfaces, e enumeraes
para Visual Basic, Visual C# e Visual J# projetos. Para obter uma lista completa dos
objetos no espao para nome, consulte Modelo de Objeto de Extensibilidade para
projetos Visual Basic, Visual C# e Visual J#.
Possvel erro usar conjuntos VSLangProj com assembly EnvDTE
Ocasionalmente se voc criar um projeto que referencia um ou mais dos conjuntos
VSLangProj e o EnvDTE conjunto, voc pode obter o seguinte erro em tempo de
execuo:
": ": Unhandled Exception System.IO.FileNotFoundException Erro ao carregar
arquivo EnvDTE, verso ' = 7.0.3300.0
Esse erro devido a um conflito de resoluo tipo Runtime. Ou seja, a verso do
EnvDTE que includa no Visual Studio 2005 8.0.xx, mas referncia de
configurao do projeto est procurando por uma verso anterior desse conjunto,
7.0.xx verso. Para corrigir esse problema, voc deve adicionar um
redirecionamento de ligao para a verso mais recente EnvDTE ao arquivo de
configurao (.config) do seu projeto. Isso permitir Visual Studio para carregar a
verso mais recente do EnvDTE e evitar que o erro ocorra.
Para fazer isso, adicione um " arquivo de configurao de aplicativos " ao seu
projeto e substitu seu contedo pelo seguinte:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoftcom:asm.v1" appliesTo="v2.0.50318">
<dependentAssembly>
<assemblyIdentity name="EnvDTE" publicKeyToken=
"b03f5f7f11d50a3a"/>
<bindingRedirect oldVersion="7.0.3300.0"

Visual Studio

383

newVersion="8.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

Objeto VSProject2
Este objeto fornece acesso a outros objetos no modelo de extensibilidade. O objeto
DTE o objeto de nvel superior no modelo Visual Studio de automao. No modelo
de extensibilidade geral, um projeto representado pelo objeto genrico Project. O
Project objeto tem uma Object propriedade. O tipo da propriedade determinado
em tempo de execuo pelo idioma do projeto. Na ou Visual J# projeto, a Object
propriedade retorna um objeto do tipo VSProject2. a Visual Basic, Visual C# Como
o tipo da propriedade Object objeto, voc deve convertido a referncia ao digitar
VSProject2. Em uma macro, a converso seria como o seguinte se o primeiro
projeto foram um Visual Basic projeto:
C#
using EnvDTE;
using EnvDTE80;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
EnvDTE.Project proj;
VSLangProj80.VSproject2 vsproject;
proj = DTE2.Solution.Projects.Item(1);
vsproject = (VSLangProj80.VSProject2)proj;

Depois que voc tiver uma referncia para o VSProject2 item, voc pode
manipular do projeto Propriedades, configuraes, arquivos, pastas, instrues
importaes, e referncias.
Para obter mais informaes, consulte Introduo ao objeto VSProject2.
Referncias e objetos de referncia
A References propriedade, contida pelo objeto VSProject2, contm uma coleo de
Reference3 objetos. O Reference3 objeto representa uma referncia de projeto e
principalmente um objeto somente leitura que oferea suporte um Remove
mtodo. O References objeto tem suporte para adicionar referncias (. conjuntos
.NET, outros projetos ActiveX,) e aumentando eventos (adicionando, removendo, e
alterar referncias) com,
O References objeto no contm as referncias de um projeto da Web.
Referncias de um projeto da Web podem ser recuperadas por acessar a
ProjectItems Propriedade da propriedade WebReferencesFolder.
Para obter mais informaes e exemplos de cdigo, consulte Reference e
Reference3 objeto, References Coleo, References propriedade, e
WebReferencesFolder propriedade.
Objeto importaes
A Imports propriedade contida pelo objeto VSProject2 mantm uma coleo de
Imports declaraes que se aplicam a um projeto inteiro Visual Basic. Se uma
instruo importaes for adicionada a essa coleo, a instruo correspondente
Imports (por exemplo, Imports VSLangProj) no precisa a ser adicionado ao
arquivo de cdigo. Este objeto suporta adicionando e removendo instrues
importaes e elevar eventos em resposta a adio e remoo instrues. No h
nenhum equivalente em um Visual C# projeto, e a
VSLangProj80.VSProject2.Imports retorna Nothing propriedade ou null
quando aplicado a um Visual C# projeto Para obter mais informaes, consulte
Imports.

Visual Studio

384

VSProjectItem e objetos BuildManager


O VSProjectItem objeto a contraparte item de projeto do objeto VSProject2. No
modelo de extensibilidade geral, o objeto genrico ProjectItem representa um item
de projeto. A Object propriedade do tipo OBJECT, e em ou Visual C# projeto, o
tipo da propriedade VSProjectItem. um Visual Basic Projetando o objeto digite
VSProjectItem teria esta aparncia em uma macro:
C#
using EnvDTE;
using EnvDTE80;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
EnvDTE.Project proj;
VSLangProj.VSProjectItem pi;
Pi = (VSProject2)DTE2.Solution.Projects.Item(1).ProjectItems.Item(1).
Object;

O VSProjectItem objeto contm propriedades que vincular ao item de projeto pai


e projeto, e um mtodo que fora a execuo de uma ferramenta personalizada
nesse item. O BuildManager objeto trata sada ferramenta personalizada. Para
obter mais informaes, consulte RunCustomTool, VSProjectItem mtodo,
Introduo ao objeto BuildManager Objeto, e BuildManager Objeto.
Propriedade Properties
Modelo de extensibilidade geral tem uma Properties propriedade em trs objetos:

Objeto Project As propriedades nesse objeto so equivalentes s


propriedades encontradas na guia Common Properties da caixa de dilogo
Property Pages no IDE do projeto.

Objeto Configuration As propriedades nesse objeto so equivalentes s


propriedades encontradas na guia Configuration Properties da caixa de
dilogo Property Pages no IDE do projeto.

Objeto ProjectItem As propriedades nesse objeto so equivalentes s


propriedades encontradas na janela Properties quando um item de projeto
est selecionado no Solution Explorer.

Em cada caso a Properties propriedade uma coleo de objetos do tipo


Propriedade. Um Property objeto pode ser obtido a partir da coleo,
especificando o da propriedade ndice baseado em 1 ou seu nome. O contedo
da coleo dependem do idioma. No caso de itens de projeto, o contedo
tambm dependem das se o item um arquivo ou uma pasta.

Modelo de Objeto de Extensibilidade para projetos Visual Basic,


Visual C# e Visual J#
Esses objetos, propriedades, mtodos, e eventos so usados para automatizar
tarefas no ambiente de desenvolvimento, criar novos tipos de projeto, e criar novo
projeto tipos de item.
Nesta seo
Grfico hierarquia VSLangProj (VSLangProj2 e VSLangProj80)
Ilustra as relaes de objetos no espao para nome VSLangProj.
Namespace VSLangProj (VSLangProj2 e VSLangProj80)

Visual Studio

385

Descreve espao para nome contendo extenses do espao para nome


VSLangProj.
Visual Basic, Visual C# e exemplos de extensibilidade Project J# Visual
Fornece links para tpicos contendo exemplos Programao de
extensibilidade.
Sees relacionadas
Referncia de automao e extensibilidade
Contm idioma tpicos de referncia para o modelo de automao do
ambiente de desenvolvimento integrado (IDE), incluindo depurao.
Introduo ao Extensibilidade do Projeto no Visual Basic e Visual C#
Descreve como controlar Visual Basic e Visual C# projetos e solues usando
seus objetos de automao.

Modelo de Objeto de Extensibilidade do Visual C++


Esta seo da documentao Visual C++ aborda quatro modelos de objeto que
compem o Visual C++ modelo de objeto extensibilidade.
O Visual C++ modelo de objeto extensibilidade um conjunto de objetos COM,
interfaces, e associados wrappers gerenciados que podem ser usados com qualquer
linguagem compatvel com ou o .NET Framework para automatizar aes que
ocorrem no ambiente Visual Studio de desenvolvimento integrado (IDE).
Cada modelo inclui objetos que representa partes de um Visual C++ projeto
predefinidos. Objetos podem ser manipulados com Visual C++ ou com outros
idiomas suporte por Visual C++, tais como Visual C#. Propriedades podem ser lidas
e conjunto, podem ser chamados, mtodos e eventos podem ser tratados em
qualquer linguagem compatvel com o .NET Framework com ou. Cada modelo pode
ser manipulado com Visual Basic macros ou atravs da Properties janela.
Nesta seo
Visual modelo cdigo C++
Explica como manipular internos elementos, tais como uma classe definida
ou funo dentro de um Visual C++ projeto.
Modelo do Project C++ Visual
Explica o modelo que regula projetos e cria.
Visual modelo Assistente C++
Explica como oferecem suporte a Automao para assistentes de design.
Sees relacionadas
Referncia de automao e extensibilidade
Inclui informaes de referncia para os modelos de extensibilidade.
Automao e extensibilidade do Visual Studio

Bem-vindo ao Assistente suplemento, Assistente para


Adicionar-in Visual Studio
Este painel apresenta ao assistente add-in. Para iniciar o assistente add-in, abra a
New Project caixa, expanda Other Project Types, clique em Extensibility e
clique duas vezes em qualquer Visual Studio Add-in ou Shared Add-in no painel

Visual Studio

386

Templates. O assistente suplemento cria uma estrutura bsica add-in que voc
pode complementar posteriormente. Para obter mais informaes, consulte Criando
Add-ins e assistentes.
Framework
Back
Move para a pgina anterior do assistente do suplemento ou para a New
Project caixa de dilogo se o foco estiver na primeira pgina.
Next
Mover para a prxima pgina do Assistente do suplemento.
Cancel
Cancelar o Assistente para Adicionar-in e a criao do suplemento.
Consulte tambm
Tarefas

Referncia de automao e extensibilidade


Os tpicos a seguir se relacionam ao automao e extensibilidade no Visual Studio
para componentes compartilhados e especficos do idioma.
Nesta seo
EnvDTE
Os tipos e membros relacionadas automao, extensibilidade, e a
depurao para todos os Visual Studio idiomas.
EnvDTE80
Os tipos e membros, novo para Visual Studio 2005, relacionados ao
automao, extensibilidade, e a depurao para todos os Visual Studio
idiomas.
Extensibility
Contm a IDTExtensibility2 interface que hospedam mtodos que manipulam
eventos add-in.
VSLangProj
Tipos e membros que se relacionam com Visual Basic, Visual C# e Visual J#
projeto de automao.
VSLangProj2
Tipos e membros que se relacionam com Visual Basic, Visual C# e Visual J#
projeto de automao.
VSLangProj80
Tipos e membros, Novo, para Visual Studio 2005 que se relacionam com
Visual Basic, Visual C# e Visual J# Projeto Automao.
VCCodeModel
Os tipos e membros relacionados ao Visual C++ cdigo de automao. Inclui
tipos e membros novos no Visual Studio 2005.
VCProject
Os tipos e membros relacionados ao Visual C++ projeto Automao. Inclui
tipos e membros novos no Visual Studio 2005.

Visual Studio

387

VCProjectEngine
Os tipos e membros relacionados ao Visual C++ projeto Automao. Inclui
tipos e membros novos no Visual Studio 2005.
VsWizard
Os tipos e membros relacionadas Visual C++ automao Assistente. Inclui
tipos e membros novos no Visual Studio 2005.
Modelo de Objeto de Extensibilidade do Visual C++
Lista todos os objetos, colees, interfaces, propriedades, mtodos, eventos,
e constantes relacionadas s montagens vrios Visual C++.

Visual Studio

388

Visual Studio Comandos e opes


Visual comandos Studio permitem direta interao com o ambiente de
desenvolvimento integrado por meio do teclado (IDE). Muitas caixas de dilogo,
janelas, e comandos de menu no IDE tm um equivalente de linha de comando que
voc pode digitar na Janela de Comando, a Janela Immediate, ou o Localizar /
comando caixa para exibir uma caixa de dilogo ou executar um comando.
Visual Studio comandos seguem determinadas regras sintaxe geral que so
explicadas abaixo. O conjunto de comandos disponveis inclui todos os comandos
listados na Keyboard, Environment, Options Dialog Box e no, os Comandos
guia, Personalizar caixa de dilogo Visual Studio () Aliases definidos pelo usurio,
bem como e macros.
Criando a partir da linha de comando
Para obter informaes sobre criao projetos no Visual Studio linguagens de
programao a partir da linha de comando, e Criando a partir da linha de comando.
Consulte Compilando a partir da linha de comando (Visual Basic), Criando de linha
de comando visual (C#), Opes VCBUILD Visual C++ (,) Para obter informaes
sobre como configurar um arquivo de esquema XML MSBuild para criar projetos,
consulte o Referncia MSBuild.
Sintaxe comando Visual Studio
Visual comandos Studio podem ser inseridos na janela, Immedia janela te, ou
CommandFind/Command na caixa. Em cada caso, o sinal maior. (>) usado
para indicar que um comando em vez de uma operao de pesquisa ou de
depurao a seguir
Para obter informaes sobre a sintaxe de comando, consulte Visual Studio
comandos com argumentos e Opes de linha de comando Devenv.
Muitos comandos podem ser gravados em um dos dois formatos, usando a sintaxe
de comando completa, uma menor Formulrio ou alias.
Nomes de comandos concluda
A sintaxe completa para comandos baseada em caixa de dilogo listados
Keyboard, Environment Options nome comando completo. Na maioria dos
casos, a sintaxe completa reflete a colocao de comandos no sistema menu IDE.
Concluir comando nomes compatveis com as regras de sintaxe a seguir:

Categorias de comando, como menus, e nomes de comandos so separadas


por um ponto (.).

Espaos e pontuao so removidos de todos os nomes de comando


conforme exibido na barra de menus.

Por exemplo, o comando que exibe aparece Keyboard, Environment Options


como um filho do comando File. o Nova caixa de dilogo do arquivo Para exibir
esta caixa de dilogo, digite o seguinte comando na janela, Immedia janela te, ou
CommandFind/Command caixa e pressione ENTER.
>File.NewFile

A New File caixa de dilogo aparece, pronto para que voc possa faa sua seleo.

Visual Studio

389

Aliases de comando
Voc pode criar nomes curtos, ou aliases, para nomes comando completo para
ajud-lo a lembrar e digite os comandos mais rapidamente. O Visual Studio vem
com um conjunto de aliases predefinidos. Por exemplo, o comando que exibe a
New File caixa de dilogo tem o alias nf padro. Para obter mais informaes,
consulte Predefinidas visual aliases de comando Studio.
Voc tambm pode criar seus prprios aliases personalizados ou alterar aliases
predefinidos, usando o alias comando. Por exemplo, voc pode criar um alias para
o comando Edit.MakeUpperCase digitando o seguinte:
>alias upper Edit.MakeUpperCase

Na prxima vez em que voc selecione texto no editor e inserir >upper na janela,
Immedia janela te, ou CommandFind/Command caixa, o texto ser exibido em
letras maisculas. Voc tambm pode criar aliases que incluem nomes de
comandos e seus argumentos.
Para exibir uma lista de todos os aliases atuais, digite o seguinte comando na
janela Command:
>alias

Comandos com argumentos


Alguns comandos permitem que voc para fornecer argumentos, tais como nomes
de arquivo ou opes que executar um comando, sem exibir todas as caixas de
dilogo ou outras interfaces de usurio. Por exemplo, o comando File.NewFile,
digitado sem opes, exibe a New File caixa de dilogo. Voc tambm pode criar
um novo arquivo de um modelo, sem exibir a New File caixa de dilogo, incluindo
a opo /t. O exemplo a seguir cria um novo arquivo de texto chamado MyText.txt,
com base em modelo " Arquivo General\Text ", e abre-no Editor de Cdigo fonte.
>File.NewFile Mytext /t:"General\Text File" /e:"Source Code (text) Editor"

Observao
Argumentos comando devem ser inseridos na ordem especificada para o comando. Switches e seus
argumentos podem ser colocados em qualquer ordem.
Comandos e argumentos compatveis com a seguinte sintaxe:

Comandos nomes e argumentos so separados por espaos

Valores argumento que contenham espaos devem ser colocados entre aspas

Use o circunflexo (^ caracteres para caracteres de escape)

Abreviaes argumento caractere nico-podem ser combinadas. Por


exemplo, voc pode combinar as abreviaes argumento nico caractere para
/case (/c. (/w) como /cw em vez de /c /w) e /word

Muitos switches nome comando tm nomes completo e curto que podem ser
usados de forma intercambivel. Por exemplo, a /case opo de comando
Edit.Find tambm pode ser gravada /c. Para obter uma lista completa, consulte
Visual Studio comandos com argumentos.
Escape caracteres
Um caractere de interpolao (^) em uma linha de comando significa que o
caractere imediatamente aps ele interpretada literalmente, em vez de como um

Visual Studio

390

caractere de controle. Isso pode ser usado para incorporar aspas normais ("),
espaos, barras esquerda, carets, ou quaisquer outros caracteres literais em um
valor parmetro ou opo, com exceo da opo nomes. Por exemplo,
>Edit.Find ^^t /regex

Uma interpolao funciona da mesma se ele est dentro ou fora aspas. Se uma
interpolao for o ltimo caractere na linha, ele ser ignorado.
Concluso Automtica para comandos
A Command janela, Immedia janela te, e Find/Command Caixa fornecem
concluso automtica quando voc insere nomes de comandos e aliases. A lista de
concluso automtico exibe todos os possveis correspondentes nomes de
comandos e aliases, se o comando est disponvel no momento ou no. Se voc
digitar ou selecionar um comando disponvel, a barra de status exibe a mensagem,
O comando " no est disponvel " e o comando ser ignorado.
Nomes de comandos internacionais
Em verses localizadas do IDE, nomes de comandos podem ser inseridos no idioma
nativo do IDE ou no ingls. Por exemplo, voc pode digitar no francs IDE para
executar uma File.NewFile ou Fichier.NouveauFichier o mesmo comando.
Nomes de macro so semelhantes aos nomes de comandos. Embora voc pode
salvar macros usando um nome localizado, para melhor compatibilidade entre
ingls e verses localizadas do Visual Studio, melhor para salvar macros usando
nomes em ingls. Isso ocorre porque todas as verses localizadas do IDE entender
ingls comandos, mas nem todas as verses localizadas do IDE entende localizado
um idioma diferente.

Janela de Comando
A Command janela usada para executar comandos ou aliases diretamente no
ambiente Visual Studio de desenvolvimento integrado (IDE). Voc pode executar os
comandos de menu e comandos que no aparecem em qualquer menu. Para exibir
a Command janela, escolha Other Windows No menu View, e selecione
Command Window.
Esta seo explica os comandos e aliases disponveis a partir da Command janela.
Predefinidas visual aliases de comando Studio
Contm uma lista do availabe aliases comando predefinidas com Visual
Studio.
Visual Studio comandos com argumentos
Contm informaes sobre os Visual Studio comandos que obtm
argumentos.
Exibindo os valores de variveis
Para verificar o valor de uma varivel varA, use o Comando Imprimir:
>Debug.Print varA

O ponto de interrogao (?) um alias para Debug.Print, para este comando


tambm pode ser gravado:
>? varA

As duas verses desse comando retornar o valor da varivel varA.

Visual Studio

391

Inserir comandos
O maior que Smbolo. aparece na extremidade esquerda da janela de comando
como um prompt para novas linhas (>) Use as teclas SETA PARA CIMA e SETA PARA
BAIXO para rolar pela comandos emitidos anteriormente.
Tarefa

Soluo

Exemplo

Avaliar uma expresso.

Preceda a expresso com um ponto de


interrogao (?).

?
myvar

Alterne para uma janela imediata.

Inserir immed na janela sem o maior


que (>) sinal

immed

Alternar novamente para a janela de comando a


partir de uma janela imediata.

Inserir cmd na janela.

>cmd

Os seguintes atalhos ajudam a navegar enquanto no modo de comando.


Ao

Local do cursor

KeyBinding

Alternar entre a lista de comandos


inseridos anteriormente.

Linha de entrada

Seta para baixo e para baixo

Rola para cima a janela.

Contedo da janela de
comando

CTRL+SETA PARA CIMA

Role para baixo a janela.

Contedo da janela de
comando

SETA ABAIXO ou CTRL+SETA


PARA BAIXO

Dica
Voc pode copiar todos ou parte de um comando anterior para a linha de entrada, rolagem a ele,
realando todo ou parte dele, e em seguida, pressionando ENTER.
Modo marcar
Quando voc clica em qualquer linha anterior na janela Command, no voc
alternar automaticamente no modo marcar. Isso permite que voc para selecionar,
editar e copiar texto de comandos anteriores medida que voc faria em qualquer
editor de texto, e col-los na linha atual.
O igual (=) sinal
A janela utilizada para digitar o EvaluateStatement Comando determina se um sinal
de igual (=) interpretado como um operador de comparao ou como um
operador de atribuio.
Na janela Command, um sinal de igual (=) interpretado como um operador de
comparao. Voc no pode usar operadores de atribuio na janela Command.
Caso, por exemplo, se os valores de variveis varA e varB so diferente, e o
comando
>Debug.EvaluateStatement(varA=varB)

Visual Studio

392

Retornar um valor de False.


Na janela Immediate, por outro lado, um sinal de igual (=) interpretado como
um operador de atribuio. Portanto, por exemplo, o comando
>Debug.EvaluateStatement(varA=varB)

ir atribuir a varivel varA o valor da varivel varB.


Parmetros, opes, e valores
Alguns Visual Studio comandos comandos tem necessrias e argumentos opcionais,
alterna e valores. Certas regras se aplicam ao lidar com tais comandos. O seguinte
um exemplo de um comando Rich para esclarecer a terminologia.
Edit.ReplaceInFiles /case /pattern:regex var[1-3]+ oldpar

Neste exemplo,

Edit.ReplaceInFiles o comando

e /case/pattern:regex so opes (exibir o caractere de barra [/])

regex o valor da opo /pattern; a /case opo no tem valor

e var[1-3]+oldpar so parmetros
Observao
Qualquer comando, parmetro, opo, ou valor que contm espaos deve ter aspas duplas nos dois lados.

A posio do opes e parmetros pode ser interchanged livremente na linha de


comando com a exceo do comando Shell, que requer suas opes e parmetros
em uma ordem especfica.
Quase cada opo suporte de um comando tem duas formas: Um formulrio curto
(um caractere) e uma forma longa. Vrias opes de forma curta podem ser
combinadas em um grupo. Por exemplo, /p /g /m pode ser expresso como
alternativa como /pgm.
Se opes curta so combinados em um grupo e considerando um valor, esse valor
se aplicar a cada opo. Por exemplo, /pgm:123 equivale a /p:123 /g:123 /m:123.
Um erro ocorre se qualquer uma das opes no grupo no aceita um valor.
Escape caracteres
Um caractere de interpolao (^) em uma linha de comando significa que o
caractere imediatamente aps ele interpretada literalmente, em vez de como um
caractere de controle. Isso pode ser usado para incorporar aspas normais ("),
espaos, barras esquerda, carets, ou quaisquer outros caracteres literais em um
valor parmetro ou opo, com exceo da opo nomes. Por exemplo,
>Edit.Find ^^t /regex

Uma interpolao funciona da mesma se ele est dentro ou fora aspas. Se uma
interpolao for o ltimo caractere na linha, ele ser ignorado.

Janela Immediate
A Immediate janela usada para depurao e avaliar expresses, execute
instrues, imprimir varivel valores, e assim por diante. Ele permite que voc para

Visual Studio

393

inserir expresses para ser avaliada ou executados pelo idioma de desenvolvimento


durante a depurao. Para exibir a Immediate janela, abra um projeto para
edio, escolha Windows a partir do Debug Menu e selecione Immediate.
Voc pode usar esta janela para emitir comandos individuais Visual Studio. Os
comandos disponveis incluem EvaluateStatement, que pode ser usada para atribuir
valores a variveis. A Immediate janela tambm suporta IntelliSense.
Esta seo contm informaes sobre os comandos disponveis a partir da
Immediate janela.
Comandos da janela Imediata
Contm links para tpicos que descrevem os comandos disponveis a partir
da Immediate janela.
Exibindo os valores de variveis
Esta janela pode ser especialmente til quando estiver depurando um aplicativo.
Por exemplo, para verificar o valor de uma varivel myVar, voc pode usar o
Comando Imprimir:
>Debug.Print varA

O ponto de interrogao (?) um alias para Debug.Print, para este comando


tambm pode ser gravado:
>? varA

As duas verses desse comando retornar o valor da varivel varA.


Observao
Para emitir um Visual Studio Comando na janela Immediate, voc deve preceda o comando com um
maior sinal que (>). Para inserir vrios comandos, alternar para a Command janela.
Inserir comandos
Voc deve digitar o maior que entrar (>) ao emitir Visual Studio comandos na
janela Immediate. Use as teclas SETA PARA CIMA e SETA PARA BAIXO para rolar
pela comandos emitidos anteriormente.
Tarefa

Soluo

Exemplo

Avaliar uma expresso.

Preceda a expresso com um


ponto de interrogao (?).

? a+b

Temporariamente entrar no modo Comando enquanto no


modo Immediate (para executar um nico comando).

Digite o comando, prefacing-lo


com um maior sinal que (>).

>alias

Alternar para a janela de comando.

Inserir cmd na janela, prefacing-lo >cmd


com um maior sinal que (>).

Alternar de volta para a janela Imediata.

Inserir immed na janela sem o


maior que (>) sinal.

immed

Modo marcar

Visual Studio

394

Quando voc clica em qualquer linha anterior na janela Immediate, no voc


alternar automaticamente no modo marcar. Isso permite que voc para selecionar,
editar e copiar texto de comandos anteriores medida que voc faria em qualquer
editor de texto, e col-los na linha atual.
O igual (=) sinal
A janela utilizada para digitar o EvaluateStatement Comando determina se um sinal
de igual (=) interpretado como um operador de comparao ou como um
operador de atribuio.
Na janela Immediate, um sinal de igual (=) interpretado como um operador de
atribuio. Portanto, por exemplo, o comando
>Debug.EvaluateStatement(varA=varB)

ir atribuir a varivel varA o valor da varivel varB.


Na janela Command, por outro lado, um sinal de igual (=) interpretado como um
operador de comparao. No use operaes de atribuio na janela Command.
Caso, por exemplo, se os valores de variveis varA e varB so diferente, e o
comando
>Debug.EvaluateStatement(varA=varB)

Retornar um valor de False.

Localizar / comando caixa


A Find/Command caixa permite que voc a localizar e substituir texto, e para
executar comandos. Para emitir comandos individuais Visual Studio, preceda-los
com um caractere maior que (>).
A Find/Command caixa mantm os itens inseridos ltimas 20 e exibe-os em uma
lista drop-down. Voc pode navegar atravs da lista usando as teclas SETA. A
Find/Command caixa est localizada em ferramentas padro na maioria dos
Visual Studio 2005 idiomas de programao.
Localizar / comando caixa

Para ir para a Find/Command caixa, o clique com o mouse ou pressione CTRL + /.


Localizar e substituir
Por padro, quando voc digitar texto na caixa Find/Command e pressione
ENTER, ele procura o texto no documento atual ou janela usando as opes
especificadas na pesquisa e substituio a Localizar e Substituir janela. Para obter
mais informaes, consulte Localizando e substituindo.
Voc pode usar determinadas combinaes de teclas com a caixa Localizar /
comando.
Para

Na caixa Comando

Localizar uma seqncia

Digite a seqncia e pressione ENTER

Visual Studio

395

Localizar a prxima ocorrncia da seqncia

Pressione ENTER

Pesquisar a ndice da Ajuda

Digite a seqncia e pressione F1

Navegue at uma linha de cdigo especfica

Digite o nmero da linha e pressione CTRL + G

Localizar um objeto

Digite a seqncia e pressione F2

Ao procurar na caixa Find/Command, a janela Localizar resultados 1 aparecer,


exibindo as definies de pesquisa atual. Se, por exemplo, a ltima vez voc
pesquisados do Rpido Localizar, Localizar e Substituir janela, voc selecionado a
Match case opo, ser exibida a Find Results 1 janela
Find "mybutton", Match case, Current document

Inserir comandos
Para usar a Find/Command caixa para emitir um nico Visual Studio Comando ou
alias em vez de procurar por texto, digite o Visual Studio comando, exibir um
smbolo maior que (>). Por exemplo:
>File.NewFile c:\temp\MyFile /t:"General\Text File"

Como alternativa, voc tambm pode usar a janela de comando para inserir e
executar um ou vrios comandos. Alguns comandos ou aliases podem ser inseridos
e executados por si; outros ter necessrio argumentos em sua sintaxe. Para obter
uma lista de comandos, consulte Visual Studio Comandos e opes. Para obter uma
lista de comandos que possuem argumentos, consulte Visual Studio comandos com
argumentos.
Escape caracteres
Um caractere de interpolao (^) em uma linha de comando significa que o
caractere imediatamente aps ele interpretada literalmente, em vez de como um
caractere de controle. Isso pode ser usado para incorporar aspas normais ("),
espaos, barras esquerda, carets, ou quaisquer outros caracteres literais em um
valor parmetro ou opo, com exceo da opo nomes. Por exemplo,
>Edit.Find ^^t /regex

Uma interpolao funciona da mesma se ele est dentro ou fora aspas. Se uma
interpolao for o ltimo caractere na linha, ele ser ignorado.
Consulte

Comandos guia, Personalizar caixa de dilogo Visual Studio


()
A Commands guia permite que voc para adicionar e remover comandos nas
barras de ferramentas, e alterar as imagens usadas para botes da barra de
ferramentas. Selecione Customize no menu Tools para exibir a Customize caixa
de dilogo e escolha Commands.
Observao
As opes disponveis nas caixas de dilogo e os nomes e locais dos comandos de menu que voc v

Visual Studio

396

podem diferir do que descrito na Ajuda, dependendo de suas configuraes ativas ou da edio. Para
alterar as configuraes, escolha Import and Export Settings No menu Tools. Para obter mais
informaes, consulte Configuraes do Visual Studio.
Categorias
Especifica o conjunto de comandos que so exibidos na caixa Commands de
listagem. As categorias de comandos so baseadas em ttulos menu
fornecidos pela ferramentas e designers que o ambiente atualmente suporta.
Esta lista de ttulos dinmica, permitindo que a ordem das categorias e
ttulos menu para alterar, dependendo da quais ferramentas e designers
esto disponveis, e seus menus se tiver sido personalizados.
Observao
No possvel para dois menus em designers diferentes para compartilhar o mesmo ttulo. Em tais casos,
o ttulo menu aparecer duas vezes, oferecendo dois conjuntos comando diferente.
Comandos
Exibe os comandos e imagens comando baseadas na categoria que voc
selecionou. Voc pode arrastar um comando para a barra de ferramentas que
voc deseja personalizar.
Modificar seleo
Exibe uma lista de comandos voc pode usar para personalizar a exibio do
boto na barra de ferramentas. Por exemplo, poder alterar as teclas
Imagem ou acelerador, ou especificar se deseja exibir texto em vez de uma
imagem para o comando. Este boto estar disponvel depois que voc
selecionar um boto de comando em uma barra de ferramentas que deseja
personalizar.
Reorganizar Comandos
Exibe a Rearrange Commands caixa de dilogo, para que voc possa
modificar menus.
Teclado
Exibe o teclado, Ambiente, caixa de dilogo Opes, para que voc pode
especificar combinaes de teclas de atalho para comandos.

Visual Studio

397

Você também pode gostar