gpt4 book ai didi

C#、WPF - OpenFileDialog 不出现

转载 作者:太空狗 更新时间:2023-10-29 18:14:27 25 4
gpt4 key购买 nike

我一直在网上搜索,不幸的是从来没有遇到过像我这样的问题,所以这里是:

我的 C# WPF 应用程序不会显示任何 OpenFileDialogs 或 SafeFileDialogs。

private void btnBrowseNet_Click(object sender, RoutedEventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.CheckPathExists = true;
ofd.Multiselect = false;
ofd.Title = "Open Network Configuration Batch file...";
ofd.ValidateNames = true;
ofd.Filter = "Comma Seperated Value Files|*.csv";

if (ofd.ShowDialog() == true)
{
//...
}
}

这个确切的代码有一次做了它应该做的事情,不到五分钟后我可以点击我想要的按钮,除了鼠标指针变成一个小忙指示器之外没有任何反应,然后什么也没有。我可以单步执行该方法或执行类似的操作

bool? shown = ofd.ShowDialog();

但是无论如何,对话框都不会显示。当然,shown 在这种情况下将是错误的。昨天我浪费了一个半小时的时间进行搜索,就在我退出的时候,我又试了一次,突然之间就成功了。有时有效,有时无效。但这似乎是特定于项目的,因为我可以将相同的代码粘贴到一个新项目中,并且它的工作方式与预期的一样。此外,这是该项目唯一看起来可疑的地方。其他一切都按预期工作。

这里有没有人经历过类似的事情,从而知道我到底能做什么?我们将不胜感激任何帮助。

最佳答案

OpenFileDialog 有大量可能的故障模式。使用一个将您的应用程序暴露给安装在您机器上的几乎任何 shell 扩展。其中许多可能非常不稳定,扩展作者不太可能检查它是否在 WPF 进程中正常工作。

通过运行 SysInternals 的 AutoRuns 实用程序解决这个问题。单击资源管理器选项卡并查找名称中包含“ShellEx”的组。取消选中任何非 Microsoft 发布的内容。重启查看问题是否解决。

关于C#、WPF - OpenFileDialog 不出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2201227/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com