2009-12-17 62 views
0

VS2008中的C#设计人员遇到一些问题,例如当项目编译时,他们有时会“忘记”一个控件。设计师特别倾向于忘记用户控制。VS2008/C#编译项目时关闭所有设计器?

我在Google上搜索了一阵子,发现这个提示:在编译项目之前关闭所有设计器。

这真的有帮助吗?

有没有办法自动? (预编译脚本等?)

回答

1

这里是宏其关闭所有的设计师和叶文本文件打开:

Sub CloseAllDesigners() 
    Dim doc As Document 
    For Each doc In DTE.Documents 
     Dim win As Window 
     For Each win In doc.Windows 
      Select Case TypeName(win.Object) 
       Case "TextWindow", "HTMLWindow" 
        'keep opened 
       Case Else 
        'close 
        win.Close(vsSaveChanges.vsSaveChangesPrompt) 
      End Select 
     Next 
    Next 
End Sub 

见我快速教程how to create and execute VS macro并分配一个keybord快捷方式或按钮即可。你甚至可以在每次构建之前自动执行这个宏。在Macros IDE Class View中导航到MyMacros - EnvironmentEvents。打开(双击)EnvironmentEvents。在模块中插入以下代码:

Private Sub BuildEvents_OnBuildBegin(_ 
    ByVal Scope As EnvDTE.vsBuildScope, _ 
    ByVal Action As EnvDTE.vsBuildAction) _ 
    Handles BuildEvents.OnBuildBegin 

    CloseAllDesigners() 
End Sub 
2

我不知道如果这是你在找什么,但如果你打开命令窗口,您可以键入:

>CloseAll 
>Build.BuildSolution 
+0

是否可以关闭设计人员?像'如果windows.type ==设计器'关闭,并将其放入预生成脚本。 – 2009-12-17 13:10:30