Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# OpenFileDialog没有';不显示_C#_Winforms_Visual Studio 2010_Openfiledialog - Fatal编程技术网

C# OpenFileDialog没有';不显示

C# OpenFileDialog没有';不显示,c#,winforms,visual-studio-2010,openfiledialog,C#,Winforms,Visual Studio 2010,Openfiledialog,我有一个简单的代码: private void buttonOpen_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogResult.OK) { textBox2.Text = openFileDialog1.FileName; } } 当我运行程序时,窗体不显示并退出调试模式 在输出视图中写入:程序“[4244]openfiledialog.vsh

我有一个简单的代码:

private void buttonOpen_Click(object sender, EventArgs e)
{
    if (openFileDialog1.ShowDialog() == DialogResult.OK)
    {
        textBox2.Text = openFileDialog1.FileName;
    }
}
当我运行程序时,窗体不显示并退出调试模式

在输出视图中写入:程序“[4244]openfiledialog.vshost.exe:Managed(v4.0.30319)”已退出,代码为1073741855(0x4000001f)

我有VisualStudio2010专业版

编辑:form1.designer.cs

     private void InitializeComponent()
    {
        this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
        this.buttonOpen = new System.Windows.Forms.Button();
        this.textBox1 = new System.Windows.Forms.TextBox();
        this.textBox2 = new System.Windows.Forms.TextBox();
        this.SuspendLayout();
        // 
        // openFileDialog1
        // 
        this.openFileDialog1.FileName = "openFileDialog1";
        // 
        // buttonOpen
        // 
        this.buttonOpen.Location = new System.Drawing.Point(13, 48);
        this.buttonOpen.Name = "buttonOpen";
        this.buttonOpen.Size = new System.Drawing.Size(75, 23);
        this.buttonOpen.TabIndex = 0;
        this.buttonOpen.Text = "open";
        this.buttonOpen.UseVisualStyleBackColor = true;
        this.buttonOpen.Click += new System.EventHandler(this.buttonOpen_Click);
        // 
        // textBox1
        // 
        this.textBox1.Location = new System.Drawing.Point(113, 50);
        this.textBox1.Name = "textBox1";
        this.textBox1.Size = new System.Drawing.Size(279, 20);
        this.textBox1.TabIndex = 1;
        // 
        // textBox2
        // 
        this.textBox2.Location = new System.Drawing.Point(13, 98);
        this.textBox2.Name = "textBox2";
        this.textBox2.Size = new System.Drawing.Size(385, 20);
        this.textBox2.TabIndex = 2;
        // 
        // Form1
        // 
        this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
        this.ClientSize = new System.Drawing.Size(445, 216);
        this.Controls.Add(this.textBox2);
        this.Controls.Add(this.textBox1);
        this.Controls.Add(this.buttonOpen);
        this.Name = "Form1";
        this.Text = "Form1";
        this.ResumeLayout(false);
        this.PerformLayout();

一般来说,我在调用OpenFileDialog的事件中初始化并使用它。我想不出在什么情况下我会希望它成为我窗户的财产。我要做的第一件事是将其作为属性删除,并在事件中对其进行初始化

private void buttonOpen_Click(object sender, EventArgs e)
{
    using (OpenFileDialog openFileDialog1 = new OpenFileDialog())
    {
        if (openFileDialog1.ShowDialog() == DialogResult.OK)
        {
            textBox2.Text = openFileDialog1.FileName;
        }
    }
}
您不需要将FileName属性设置为任何值,因为对话框将为您执行此操作


我在您的错误代码中找到的唯一内容是()。在你当前的代码中,我找不到任何可能导致这种情况的东西。如果您正在访问非托管代码,您可能需要启用非托管代码调试。

您在哪里声明openFileDialog?这是一个关于openFileDialog的好教程,您需要发布更多的代码,以及更多关于发生了什么的详细信息。表格上有显示吗?您是否单击该按钮?我在design中声明(在工具箱中拖放)。当我单击以运行调试时,它显示窗体,但当我单击按钮时,窗体关闭并退出调试模式。目测该退出代码发现以下内容:。可能是程序中的其他内容导致调试器退出。由于您只发布了事件处理程序,因此无法确定。请不要忘记在对话框对象周围使用