2012-02-03 99 views
0

我正在使用SharpDevelop和.NET 4.0。VB.NET - 如何从默认的My.MyApplication中更改“Windows应用程序”的命名空间/类名?

我的问题是这样的:如果你以一个“Windows应用程序”模板创建一个新的项目,它生成一个Program.vb具有以下内容:

Imports Microsoft.VisualBasic.ApplicationServices 

Namespace My 
' This file controls the behaviour of the application. 
    Partial Class MyApplication 
     Public Sub New() 
      MyBase.New(AuthenticationMode.Windows) 
      Me.IsSingleInstance = False 
      Me.EnableVisualStyles = True 
      Me.SaveMySettingsOnExit = True 
      Me.ShutDownStyle = ShutdownMode.AfterMainFormCloses 
     End Sub 

     Protected Overrides Sub OnCreateMainForm() 
      Me.MainForm = My.Forms.MainForm 
     End Sub 
    End Class 
End Namespace 

但是,如果更改命名空间或类名称,它打破。我注意到这个向导生成了一个Settings.settings文件......令我困扰的是我似乎无法找到类扩展的来源。也就是说,如果更改/两命名空间/类,你建立的错误,如:

Program.vb(22,27) : Error BC30284: sub 'OnCreateMainForm' 
cannot be declared 'Overrides' because it does not override a sub 
in a base class. 

换句话说,在我脑海里的代码应该是这样的:

Namespace My 
    Partial Class MyApplication 
     Inherits WindowsFormsApplicationBase 
... 

是什么去这里?

回答

1

那么,如果你从解决方案资源管理器重命名,你会没事的。

如果你从类中重构,你最终可能会在Class2.cs中定义Class1,这会让人恼火。

如果您只是修改MyForm.cs,那么您还需要修改MyForm.Designer.cs,这是我怀疑您的问题所在。

相关问题