Project.Globals 属性
获取 Globals 对象,该对象包含可以保存在解决方案 (.sln) 文件、项目文件或用户的配置文件数据中的外接程序值。
命名空间: EnvDTE
程序集: EnvDTE(在 EnvDTE.dll 中)
语法
声明
ReadOnly Property Globals As Globals
Globals Globals { get; }
property Globals^ Globals {
Globals^ get ();
}
abstract Globals : Globals
function get Globals () : Globals
属性值
类型:EnvDTE.Globals
Globals 对象。
备注
在加载解决方案、项目文件等内容后,就可以使用外接程序。
Solution 全局变量并不一定与外接程序关联。 它们还可与宏或其他自动化客户端关联。
备注
VariableValue 名称字符串不能包括空格、冒号 (:) 或句点 (.) 字符。如果名称包含任何这些字符,则会收到错误“值不在预期的范围内”。
示例
Public Sub CodeExample(ByVal dte As DTE2)
Try
' Open a project before running this sample.
Dim prj As Project = dte.Solution.Projects.Item(1)
Dim prjs As Projects
Dim msg2 As String = "Global Variables:"
Dim msg As String
msg = "FileName: " + prj.FileName
msg += vbCrLf + "FullName: " + prj.FullName
msg += vbCrLf + "Project-level access to " + prj.CodeModel.CodeElements.Count.ToString() + " CodeElements through the CodeModel"
prjs = prj.Collection
msg += vbCrLf + "There are " + prjs.Count.ToString() + " projects in the same collection."
msg += vbCrLf + "Application containing this project: " + prj.DTE.Name
If prj.Saved Then
msg += vbCrLf + "This project has not been modified since the last save."
Else
msg += vbCrLf + "This project has been modified since the last save."
End If
msg += vbCrLf + "Properties:"
Dim prop As [Property]
For Each prop In prj.Properties
msg += vbCrLf + " " + prop.Name
Next prop
Dim s As String
For Each s In CType(prj.Globals.VariableNames, Array)
msg2 += vbCrLf + " " + s
Next s
MessageBox.Show(msg, "Project Name: " + prj.Name)
MessageBox.Show(msg2)
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
public void CodeExample(DTE2 dte)
{
try
{ // Open a project before running this sample.
Project prj = dte.Solution.Projects.Item(1);
Projects prjs;
string msg, msg2 = "Global Variables:";
msg = "FileName: " + prj.FileName;
msg += "\nFullName: " + prj.FullName;
msg += "\nProject-level access to " + prj.CodeModel.CodeElements.Count.ToString() +
" CodeElements through the CodeModel";
prjs = prj.Collection;
msg += "\nThere are " + prjs.Count.ToString() + " projects in the same collection.";
msg += "\nApplication containing this project: " + prj.DTE.Name;
if (prj.Saved)
msg += "\nThis project hasn't been modified since the last save.";
else
msg += "\nThis project has been modified since the last save.";
msg += "\nProperties: ";
foreach (Property prop in prj.Properties)
{
msg += "\n " + prop.Name;
}
foreach (String s in (Array)prj.Globals.VariableNames)
{
msg2 += "\n " + s;
}
MessageBox.Show(msg, "Project Name: " + prj.Name);
MessageBox.Show(msg2);
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。