2010-02-09 150 views
13

我正在重写VB.NET中的C#类。在C#类有一个静态构造函数在它:VB.NET中的静态构造函数

static Class() 
{ 
    ... 
} 

其中,通过调用堆栈,我发现是由主窗口的InitializeComponent()方法调用。无论我已经看了告诉我,在VB.NET相应的静态构造函数就是:

Shared Sub New() 
    ... 
End Sub 

但这种方法不会被调用。我是否创建了我的VB.NET静态构造函数?它可能是与我的静态构造函数无关的其他东西吗?

回答

11

静态构造函数由application domain中发生的以下第一个事件触发。

  1. 那个类的一个实例被创建
  2. 任何 类的静态成员的被访问/被引用。
+0

是的,你是对的。他们正在创建一个临时类来调用静态触发器。 – 2010-02-09 15:55:48