Globals.VariableExists Property
Returns whether the specified variable exists.
Namespace: EnvDTE
Assembly: EnvDTE (in EnvDTE.dll)
Syntax
'Declaration
ReadOnly Property VariableExists ( _
Name As String _
) As Boolean
bool this[
string Name
] { get; }
property bool VariableExists[String^ Name] {
bool get (String^ Name);
}
abstract VariableExists :
Name:string -> bool with get
JScript does not support indexed properties.
Parameters
Name
Type: System.StringRequired. Represents the name of the variable.
Property Value
Type: System.Boolean
A Boolean value indicating true if the variable exists, false if it does not.
Remarks
If you attempt to check the value of a variable with the VariableValue property and the variable does not exist, a new variable of that name is created with a null value. To distinguish between an empty variable and a nonexistent variable, use the VariableExists property.
Variables:
Have no limit as to length, other than system limitations.
Are case-insensitive.
Can contain any characters permitted by the system.
Are restricted to simple data types such as strings and numbers. No SafeArrays or IDispatch interfaces can be used.
Examples
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.");
}
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.
See Also
Reference
Other Resources
Persisting Information in Projects and Solutions
How to: Compile and Run the Automation Object Model Code Examples