Visual studio 从向导中取消VS2010项目创建
我在VS2010中为自定义模板创建了一个向导 它就像一个符咒 但是由于向导包含完成项目创建所需的表单,我觉得用户应该能够取消项目的创建 所以我的问题是 是否可以从实现IWizard的向导内部取消项目/模板流程的创建? 这些是我可以支配的事件Visual studio 从向导中取消VS2010项目创建,visual-studio,visual-studio-2010,wizard,project-template,Visual Studio,Visual Studio 2010,Wizard,Project Template,我在VS2010中为自定义模板创建了一个向导 它就像一个符咒 但是由于向导包含完成项目创建所需的表单,我觉得用户应该能够取消项目的创建 所以我的问题是 是否可以从实现IWizard的向导内部取消项目/模板流程的创建? 这些是我可以支配的事件 public void BeforeOpeningFile(ProjectItem projectItem) public void ProjectFinishedGenerating(Project project) public void Proje
public void BeforeOpeningFile(ProjectItem projectItem)
public void ProjectFinishedGenerating(Project project)
public void ProjectItemFinishedGenerating(ProjectItem projectItem)
public void RunFinished()
public void RunStarted(object automationObject,
Dictionary<string, string> replacementsDictionary,
WizardRunKind runKind, object[] customParams)
public bool ShouldAddProjectItem(string filePath)
打开文件(ProjectItem ProjectItem)前的公共作废
公共无效项目完成生成(项目)
公共无效项目完成生成(项目项目)
public void RunFinished()
public void RunStarted(对象自动对象,
词典替换词典,
WizardRunKind,对象[]customParams)
公共bool ShouldAddProjectItem(字符串文件路径)
谢谢大家! 是的。要指示用户已取消向导,只需在IWizard实现中抛出一个新的
一篇非常有趣的文章解释了这一切:在我从ProjectFinishedGeneration事件中删除项目之前。这实际上与从RunStarted方法引发异常的效果完全相同。最终,项目文件夹中仍然有一个空的解决方案文件夹。但至少这是一种“正确的方式”,谢谢=)此线程很旧,但是对于Visual Studio 2012,有一个WiZADReutOutExchange可以被抛出,它将返回到新的项目屏幕,并且不会为您的解决方案创建空白项目文件夹。@ Rockdocta在VS2013中抛出一个<代码> WiZADBeutOutExist< <代码>,但是文件夹仍在4年前的DISKK上,Aaron Marten发布了这个答案。因为任何原因被接受。。。我们今天不知道的任何原因,因为他分享的链接已经不存在了。因此,如果你回答了一个问题,请准确地写出解决方案,这样它将永远帮助人们……解决方案/解释仍然存在,并且仍然有效(即抛出一个WizardCancelledException)。FWIW,提及的帖子似乎已被移动到新位置。我将更新答案中的链接。