Passo a passo: Recuperar propriedades de projeto
Esta explicação passo a passo mostra como criar um VSPackage gerenciado que exibe as propriedades do projeto em uma janela de ferramenta. Você pode criar uma amostra gerenciado VSPackage usando o modelo de projeto do pacote de Visual Studio. Use a automação com o VSPackage resultante para exibir as propriedades do projeto em uma janela de ferramenta. Siga estas etapas para criar um VSPackage gerenciado que tem uma janela de ferramentas e, em seguida, estendê-lo através da automatização:
Crie o VSPackage gerenciado.
Chame o modelo de automação para exibir as propriedades do projeto em uma janela de ferramenta.
Pré-requisitos
Para concluir este passo a passo, você deve instalar o SDL do Visual Studio 2010.
Dica
Para obter mais informações sobre o SDK de Visual Studio, consulte Ampliando a visão geral de Visual Studio.Para descobrir como fazer o download do SDK do Visual Studio, consulte Visual Studio extensibilidade Developer Center no site do MSDN.
Locais para o modelo de projeto de pacote de Visual Studio
O modelo de projeto do pacote de Visual Studio pode ser encontrado em três locais diferentes de Novo projeto caixa de diálogo:
Em Visual Basic extensibilidade. O idioma padrão do projeto é Visual Basic.
Em C# extensibilidade. O idioma padrão do projeto é C#.
Em outra extensibilidade de tipos de projeto. O idioma padrão do projeto é C++.
Para criar um VSPackage gerenciado
Criar um projeto de VSPackage chamado ProjectProps usando o Visual Studio modelo de projeto do pacote.
Para obter mais informações sobre como criar um VSPackage gerenciado, consulte Passo a passo: Criando um comando de Menu usando o modelo de pacote de Visual Studio.
Sobre o Select a Programming Language de página, defina o idioma para Visual C# ou Visual Basic.
Sobre o Informações básicas de VSPackage de página, aceite os valores padrão.
Sobre o Selecionar opções de VSPackage , selecione Comando de Menu e Janela da ferramenta.
Sobre o Opções de comando de página, digite a minha caixa de ferramentas.
Sobre o Opções da janela de ferramenta de página, digite a janela da ferramenta ProjectProps.
Clique em Finish.
O modelo gera um projeto gerenciado chamado ProjectProps.
Compilar a solução e verifique se ele foi compilado sem erros.
Para chamar o modelo de automação para exibir as propriedades do projeto em uma janela de ferramenta
Em Solution Explorer, com o botão direito do ProjectProps nó e depois clique em Add Reference.
No Add Reference caixa de diálogo, diante a .NET da sala, clique duas vezes em EnvDTE e, em seguida, clique em OK.
Isso estabelece uma referência para o EnvDTE espaço para nome.
Adicione a seguinte linha na parte superior do arquivo VSPkg.cs ou VSPkg.vb.
Imports EnvDTE
using EnvDTE;
Adicione a seguinte linha na parte superior do corpo da ProjectProps classe.
Public Shared dte As EnvDTE.DTE
public static EnvDTE.DTE dte;
Adicione a seguinte linha na parte superior do corpo da ShowToolWindow método.
dte = CType(GetService(GetType(DTE)), DTE)
dte = (DTE)GetService(typeof(DTE));
Esse código usa GetService método para obter um DTE o objeto de automação que representa o Visual Studio ambiente.
Abrir MyControl.cs ou MyControl.vb na Visual Studio designer e remover o clique Me! botão que foi inserido pela Visual Studio modelo de projeto do pacote.
Abrir MyControl.cs ou MyControl.vb no editor de código fonte. Adicione a seguinte linha na parte superior do corpo da MyControl classe.
Private treeView1 As TreeView
private TreeView treeView1;
Substituir o corpo da MyControl construtor usando as seguintes linhas.
Public Sub New() ' This call is required by the Windows.Forms Form Designer. InitializeComponent() ' ' treeView1 ' Me.treeView1 = New System.Windows.Forms.TreeView() Me.SuspendLayout() Me.treeView1.Location = New System.Drawing.Point(20, 20) Dim project As EnvDTE.Project project = ProjectProps.dte.Solution.Projects.Item(1) Dim nodeNum As Integer = 0 Me.treeView1.Name = "ProjectPropsTree" Me.treeView1.Nodes.Add(New System.Windows.Forms.TreeNode(project.Name & " Properties")) For Each [property] As EnvDTE.Property In project.Properties Dim node As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Node" & nodeNum) node.Name = "Node" & nodeNum nodeNum = nodeNum + 1 node.Text = [property].Name treeView1.Nodes(0).Nodes.Add(node) Next [property] Me.treeView1.Size = New System.Drawing.Size(250, 500) Me.treeView1.TabIndex = 1 Me.Controls.Add(Me.treeView1) Me.ResumeLayout(False) End Sub
public MyControl() { // This call is required by the Windows.Forms Form Designer. InitializeComponent(); // // treeView1 // this.treeView1 = new System.Windows.Forms.TreeView(); this.SuspendLayout(); this.treeView1.Location = new System.Drawing.Point(20, 20); EnvDTE.Project project; project = ProjectProps.dte.Solution.Projects.Item(1); int nodeNum = 0; this.treeView1.Name = "ProjectPropsTree"; this.treeView1.Nodes.Add(new System.Windows.Forms.TreeNode(project.Name + " Properties")); foreach (EnvDTE.Property property in project.Properties) { System.Windows.Forms.TreeNode node = new System.Windows.Forms.TreeNode("Node" + nodeNum); node.Name = "Node" + nodeNum++; node.Text = property.Name; treeView1.Nodes[0].Nodes.Add(node); } this.treeView1.Size = new System.Drawing.Size(250, 500); this.treeView1.TabIndex = 1; this.Controls.Add(this.treeView1); this.ResumeLayout(false); }
Esse código usa objetos de automação de DTE para recuperar as propriedades do projeto e preenche o controle de árvore na janela da ferramenta dinamicamente usando os valores de nome de propriedades do projeto.
Construir o ProjectProps project.
Execute o ProjectProps projeto pressionando F5, ou CTRL + F5 para executar o Visual Studio build experimental.
Dica
Duas versões do Visual Studio agora estão abertas.
Na Visual Studio Exp, crie ou abra qualquer projeto.
Sobre o Exibir , aponte para Other Windows e clique em Janela da ferramenta ProjectProps.
Você deve ver o controle de árvore na janela da ferramenta juntamente com os valores de nome de propriedades do projeto.
Consulte também
Tarefas
Como criar e controlar janelas de ferramentas