我尝试打开系统文件对话框以选择图片。代码在我的电脑中正常运行。但在另一台计算机上无法显示系统文件对话框。
这是我的简单代码: -
private void PicInputBtn_Click(object sender, RoutedEventArgs e)
{
var dialog = new Microsoft.Win32.OpenFileDialog
{
DefaultExt = ".jpg",
Filter = "img file|*.jpg",
};
if (dialog.ShowDialog() != true)
{
return;
}
}
答案 0 :(得分:0)
将您的代码更改为:
private void PicInputBtn_Click(object sender, RoutedEventArgs e)
{
var dialog = new Microsoft.Win32.OpenFileDialog
{
DefaultExt = ".jpg",
Filter = "img file|*.jpg" // You had an extra ',' here.
};
if ((Nullable<bool>dialog.ShowDialog()) == true) // Also you forgot to put Nullable<bool>
{
// string filename = dlg.FileName;
}
else
{
return;
}
}
答案 1 :(得分:0)
如果没有任何反应,但鼠标指针会变成一个忙碌的指示灯。
您可以尝试将线程设置为STAThread
:
[STAThread]
static void Main(string[] args)
{
var o = new OpenFileDialog();
var r = o .ShowDialog();
}
然而,他们有很多原因可以打破OpenFileDialog
,您可以尝试以管理员模式启动程序并尝试重新安装.net Framework