首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >隐藏在后台的FolderBrowserDialog

隐藏在后台的FolderBrowserDialog
EN

Stack Overflow用户
提问于 2017-10-06 00:02:35
回答 1查看 527关注 0票数 1

我从Winforms应用程序打开一个FolderBrowserDialog。在应用程序启动后的第一次,它工作正常。然后我开始一个后台工作人员,做一些工作。

如果我在后台工作人员完成后,再次打开FolderBrowserDialog,应用程序被“锁定”,因为FolderBrowserDialog是打开的,但隐藏在后台的某个地方。我必须按ALT键才能使对话框可见。

这个问题一定和后台工作人员有关。我该如何解决这个问题?

下面是打开对话框的代码:

private void metroButtonFolderBrowser_Click(对象发送者,EventArgs e) {

代码语言:javascript
复制
        FolderBrowserDialog folderBrowserDialog1 = new FolderBrowserDialog();
        folderBrowserDialog1.Description = "CD Importordner wählen";
        folderBrowserDialog1.ShowNewFolderButton = false;


        DialogResult result = folderBrowserDialog1.ShowDialog();
        if (result == DialogResult.OK)
        {
            importfolder = folderBrowserDialog1.SelectedPath;
            ImportfolderLabelText.Text = importfolder;

        }
        else if (result == DialogResult.Cancel)
        {
            MessageBox.Show("Abbruch gewählt!");
            log.Info("User interrupted folder browser dialog.");
        }

    }
EN

回答 1

Stack Overflow用户

发布于 2018-06-05 19:21:59

您不能直接设置TopMost,但您可以为FolderBrowserDialog提供一个位于最上面的父级:

代码语言:javascript
复制
using System;
using System.Windows.Forms;

private void BrowserForDirectory()
{
    FolderBrowserDialog dirDialog = new FolderBrowserDialog();

        using (var dummy = new Form() { TopMost = true })
        {
            if (dirDialog.ShowDialog(dummy.Handle))
            {
                importfolder = dirDialog.SelectedPath;
            }
        }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46590137

复制
相关文章

相似问题

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