首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenfileDialog -窗口未弹出

OpenfileDialog -窗口未弹出
EN

Stack Overflow用户
提问于 2010-10-10 16:59:29
回答 2查看 6.2K关注 0票数 0

我正在处理表格。我希望当我点击按钮时弹出一个小窗口,并从各种文件夹中选择我选择的XML文件。

我想,这个OpenFileDialog会帮到我的。

代码语言:javascript
复制
private void button3_Click(object sender, EventArgs e)
{
   /
    OpenFileDialog OpenFileDialog1 = new OpenFileDialog();

    openFileDialog1.Filter = " XML Files|*.xml";

    openFileDialog1.InitialDirectory = @"D:\";



    if (OpenFileDialog1.ShowDialog() == DialogResult.OK)
    {
        MessageBox.Show(filed.FileName.ToString());
    }
}

我尝试使用以下代码,但当我单击按钮时,窗口不会弹出。我不明白我犯了什么错误。

这有什么问题呢?

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2010-10-10 17:02:21

你不能仅仅从控制台应用程序中open文件对话框。您将不得不通过设置为single thread apartment (STA)来解决此问题。

代码语言:javascript
复制
[STAThread]
static void Main(string[] args)
{
            MessageBox.Show("Test");
}

编辑----

以下是click事件的工作原理:

代码语言:javascript
复制
OpenFileDialog f = new OpenFileDialog();
f.Filter = "XML Files|*.xml";
f.InitialDirectory = "D:\\"; 
if(f.ShowDialog() == DialogResult.OK)
{
    MessageBox.Show(f.FileName);  
}
票数 4
EN

Stack Overflow用户

发布于 2010-10-10 17:02:17

您无法在控制台应用程序中打开文件fialog。

你说我有按钮,所以这一定是Win应用,使用

缺少openFileDialog1.ShowDialog();

代码语言:javascript
复制
private void button3_Click(object sender, EventArgs e)
        {
           OpenFileDialog OpenFileDialog1 = new OpenFileDialog();

            openFileDialog1.Filter = " XML Files|*.xml";

            openFileDialog1.InitialDirectory = @"D:\";

            openFileDialog1.ShowDialog();

            // Get file name and use OpenFileDialog1.FileName or something like that

       }
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3899673

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档