有没有办法打开非模态的文件属性窗口?

问题描述 投票:0回答:1

我正在制作一个资源管理器类型的应用程序,并使用

this
教程中的代码在
TreeView
ListView 中显示文件、文件夹和驱动器,并且一直在使用它。

现在,我正在为

ContextMenuStrip
创建
ListView
,并且我已经解决了大部分问题。 (创建新文件、文件夹、zip 等)

但是,我似乎不知道如何打开一个 非模态窗口。

我尝试使用

ShellExecute
打开属性窗口,效果很好 - 除了父级
Form
仍然可以访问。 (例如,我可以通过单击它来恢复焦点。)

当使用

Form
打开普通
ShowDialog()
时,它会阻止与父级
Form
的任何用户交互,直到将其关闭。我希望属性窗口具有相同的行为。

我希望我的问题很清楚:)

c# winforms
1个回答
0
投票

我测试过,通过ShellExecute打开文件属性窗口的方式在Win11上完全无法使用,我很好奇为什么网上到处都是答案,完全错误。使用“SHObjectProperties”API 将解决这个问题,虽然 MSDocs 提到该 API 可能很快就会被删除,但至少现在是可用的。 (2024/3/28)

这是一个例子: github.com/OrgEleCho/CurvaLauncher/blob/main/src/CurvaLauncher/Apis/CommonApi.cs

© www.soinside.com 2019 - 2024. All rights reserved.