我使用Visual Studio 2010,C#,。Net 4.0; Excel 2007加载项项目。
为什么我在加载项项目中看到类ThisAddIn
的两个不同声明?
a)文件ThisAddIn.cs中的第一个
public partial class ThisAddIn
b)文件ThisAddIn.Designer.cs中的第二个
public sealed partial class ThisAddIn : Microsoft.Office.Tools.AddInBase
这两个声明是如何相互关联的?它是否真的指定了两个单独的类,或者它实质上定义了一个类?
当我向下滚动文件ThisAddIn.Designer.cs时,我看到以下几行:
internal sealed partial class Globals {
private Globals() {
}
private static ThisAddIn _ThisAddIn;
.....
}
private static ThisAddIn _ThisAddIn;
行中使用了哪个类(上面提到的两个类)?
非常感谢您的帮助!
答案 0 :(得分:2)
这是一个部分类,这意味着它将在多个源文件中定义。它们在编译期间被合并,并且只产生一个实际的类。
此技术通常用于允许自动生成的代码位于一个文件(.Designer.cs
文件)中,而您自己的代码位于另一个文件中。
更多信息:http://msdn.microsoft.com/en-us/library/wa80x488(v=vs.90).aspx