c# - Windows 窗体不会在 Debug模式下显示

标签 c# forms debugging visual-studio-2012

我最近升级到 VS 2012。我有一组编码的 UI 测试,我在 VS 2010 中编码,我试图在 VS 2012 中启动它们。我有一个窗口窗体,我正在显示使用 AssemblyInitialize 属性开始测试运行。我使用此表单允许用户从一组值中进行选择,这些值用于为测试提供数据。这是显示表单的代码副本:

[AssemblyInitialize]
public static void AssemblyInitialize(TestContext context)
{
    ProcessUtility.TerminateAll();
    if (!File.Exists(Directory.GetCurrentDirectory() + @"\RunInfo.ser"))
    {
        InitializeForm initForm = new InitializeForm();
        initForm.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
        initForm.ShowDialog();
    }
}

所以,这是让我头疼的问题:表单在运行模式下显示得很好。但是,如果我尝试在 Debug模式下启动它,它永远不会显示。我已经逐步完成了代码。它正在加载表单的所有控件,没有错误。我进入了“initForm.ShowDialog()”代码行。它运行那行代码,但随后什么也没有发生。我没有收到任何错误,IDE 左下方的状态为“就绪”。几乎就好像 IDE 认为表单已显示,但实际上没有。我已经仔细检查了任务管理器,但它不在那里。我已经验证构建配置设置为调试。我试过清理解决方案并重新构建。此代码在 VS 2010 中继续工作。请告诉我那里有人遇到了类似的问题,因为我没有想法。我是 stackoverflow 的新手,所以如果我可以提供任何其他内容来更好地解释这个问题,请告诉我。预先感谢您查看它。

最佳答案

不确定为什么这个解决方案有效,但我能够在 VS2013 中解决这个问题,方法是在调用 ShowDialog 之前将我尝试显示的表单上的可见属性设置为 true 然后再设置为 false。

VB.Net 示例代码

Dim form as Form = new Form
form.Visible = True
form.Visible = False
form.ShowDialog

关于c# - Windows 窗体不会在 Debug模式下显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17955864/

相关文章:

c# - 开源 ASP.NET MVC CMS 的评论/比较

html - 在表单中居中输入字段

html - 如何制作一个灰色的 HTML 表单?

debugging - 堆扩展命令失败 : failed to initialize the extention

debugging - 如何使用 strace 只显示花费大量时间的调用?

c# - 要解密的数据长度无效

c# - Entity Framework 存储过程结果映射

c# - 向 button_click 函数添加可选参数

JQuery:根据复选框状态添加/删除 html

Javascript 错误报告