Partilhar via


Interface Globals

O Globals objeto é um cache para armazenar dados para a duração de cada sessão da Visual Studio ambiente, bem como nas sessões usando o VariablePersists propriedade.

Namespace:  EnvDTE
Assembly:  EnvDTE (em EnvDTE.dll)

Sintaxe

'Declaração
<GuidAttribute("E68A3E0E-B435-4DDE-86B7-F5ADEFC19DF2")> _
Public Interface Globals
[GuidAttribute("E68A3E0E-B435-4DDE-86B7-F5ADEFC19DF2")]
public interface Globals
[GuidAttribute(L"E68A3E0E-B435-4DDE-86B7-F5ADEFC19DF2")]
public interface class Globals
[<GuidAttribute("E68A3E0E-B435-4DDE-86B7-F5ADEFC19DF2")>]
type Globals =  interface end
public interface Globals

O tipo Globals expõe os membros a seguir.

Propriedades

  Nome Descrição
Propriedade pública DTE Obtém o objeto de extensibilidade de nível superior.
Propriedade pública Parent Obtém o objeto pai imediato de um Globals objeto.
Propriedade pública VariableExists Retorna se a variável especificada existe.
Propriedade pública VariableNames Obtém uma lista de todos os nomes de variáveis globais atuais.
Propriedade pública VariablePersists O VariablePersists a propriedade se aplica a vários tipos de Globals objetos.Para o DTE.Globals de objeto, ele obtém ou define se a variável é mantida pelo ambiente e está disponível entre as sessões do ambiente.Para o Solution.Globals de objeto, ele obtém ou define se a variável é mantida pelo ambiente e está disponível entre sessões do ambiente e entre o carregamento e descarregamento de uma solução.Para o Project.Globals de objeto, ele obtém ou define se a variável é mantida pelo ambiente no arquivo de projeto.
Propriedade pública VariableValue Retorna ou define a variável com o nome especificado.

Superior

Comentários

O Globals o objeto, por exemplo, permite que os programas possuem variáveis globais, cujos valores são persistentes entre execuções.Ele também pode ser usado para permitir que um comando para implementar um valor padrão se ele requer que o usuário insira informações cada vez que ele seja executado.Além disso, ele pode ser usado para alterar seu comportamento depois que ele foi invocado de um determinado número de vezes.

Dados são armazenados na Globals objeto como pares nome/variante-valor.Esses pares nome/valor opcionalmente podem ser armazenados no disco usando o VariablePersists propriedade para manter o seu estado (como uma seqüência de caracteres) entre diferentes sessões de Visual Studio.

ObservaçãoObservação

Variáveis que contêm objetos ou SafeArrays não pode ser salvo.Se o valor pode ser salvo como uma seqüência de caracteres, em seguida, ele é salvo no formato nativo.

Suplementos ou macros também podem usar o Globals objeto para salvar os dados definidos pelo usuário exclusivos para cada usuário entre Visual Studio sessões.Eles também podem usar o Globals o objeto para salvar os dados e recuperar dados de um arquivo de solução (. sln).

Use o VariableValue propriedade para salvar ou ler os valores salvos com o Globals objeto.

ObservaçãoObservação

VariableValueseqüências de caracteres de nome não podem conter espaço, dois-pontos (:), ou period(.) caracteres.Se um nome tiver qualquer um desses caracteres, você obtém o erro, "O valor não recai no intervalo esperado."

Exemplos

Sub OnAddinLoaded(ByVal dte As DTE)
    ' Count the number of times an add-in is loaded
    ' and store the value in the solution.
    Dim globals As Globals
    globals = dte.Solution.Globals
    If globals.VariableExists("AddinLoadCounter") Then
        ' The counter has already been set, so increment it.
        Dim int32 As System.Int32
        int32 = System.Int32.Parse(CStr(globals("AddinLoadCounter")))
        int32 += 1
        globals("AddinLoadCounter") = int32.ToString()
    Else
        ' Counter has never been set, so create and initialize it.
        globals("AddinLoadCounter") = 1.ToString()
        globals.VariablePersists("AddinLoadCounter") = True
    End If
    MsgBox("This add-in has been loaded: " & _
    globals.VariableValue("AddinLoadCounter") & " times.")
End Sub
void OnAddinLoaded(_DTE applicationObject)
{
    // Count the number of times an add-in is loaded
    // and store the value in the solution.
    Globals globals;
    globals = applicationObject.Solution.Globals;
    if(globals.get_VariableExists("AddinLoadCounter"))
    {
        // The counter has already been set, so increment it.
        System.Int32 int32;
        int32 = System.Int32.Parse((string)
        globals["AddinLoadCounter"]);
        int32++;
        globals["AddinLoadCounter"] = int32.ToString();
    }
    else
    {
        // Counter has never been set, so create and initialize it.
        globals["AddinLoadCounter"] = 1.ToString();
        globals.set_VariablePersists("AddinLoadCounter", true);
    }
    System.Windows.Forms.MessageBox.Show("This add-in has been loaded: 
    " + globals.VariableValue["AddinLoadCounter"] + " times.");
}

Consulte também

Referência

Namespace EnvDTE

Outros recursos

Informações persistentes em projetos e soluções