Compartilhar via


Interface Globals

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

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

Sintaxe

<GuidAttribute("E68A3E0E-B435-4DDE-86B7-F5ADEFC19DF2")> _
Public Interface Globals

Dim instance As Globals
[GuidAttribute("E68A3E0E-B435-4DDE-86B7-F5ADEFC19DF2")]
public interface Globals
[GuidAttribute(L"E68A3E0E-B435-4DDE-86B7-F5ADEFC19DF2")]
public interface class Globals
public interface Globals

Comentários

O objeto Globals, por exemplo, permite que os programas tem variáveis Global cujos valores persistem entre as 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 Enter informações cada vez que ele executa.Além disso, ele pode ser usado para alterar seu comportamento depois que ele tiver sido chamado um determinado número de vezes.

Dados são armazenados no objeto Globals como pares nome/variante-valor.Esses nome/valor pares opcionalmente pode ser armazenado em disco usando a propriedade de VariablePersists para manter seu estado (como uma Cadeia de Caracteres) entre as diferentes sessões de Visual Studio.

Observação:

Variáveis que contenham obje CTS ou SafeArrays não pode ser salvo.Se o valor pode ser salvo como uma Cadeia de Caracteres, em seguida, ele é salvo em seu Formatarar nativo.

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

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

Observação:

Nome de VariableValue seqüências de caracteres não podem conter espaço, Ponto-e-Vírgula (:), ou caracteres period(.).Se um nome tiver um dos seguintes caracteres, o erro, "valor não estejam dentro do 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 Globalsglobals = 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

Globals Membros

Espaço para nome EnvDTE

Outros recursos

Informações persistentes em Projects and Solutions