Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
System.Windows.Forms.OpenFileDialog(C#)中的System.TypeLoadException_C#_Exception - Fatal编程技术网

System.Windows.Forms.OpenFileDialog(C#)中的System.TypeLoadException

System.Windows.Forms.OpenFileDialog(C#)中的System.TypeLoadException,c#,exception,C#,Exception,我在运行Windows窗体程序时遇到问题 在程序中,我有一个按钮,每次单击它时都会调用OpenFileDialog的ShowDialog() public partial class MyProgram : Form { private Button myButton; private OpenFileDialog openFD; private string filePath; public MyProgram() { InitializeComponent();

我在运行Windows窗体程序时遇到问题

在程序中,我有一个按钮,每次单击它时都会调用OpenFileDialog的ShowDialog()

public partial class MyProgram : Form { private Button myButton; private OpenFileDialog openFD; private string filePath; public MyProgram() { InitializeComponent(); myButton = new Button(); openFD = new OpenFileDialog(); filePath = string.Empty; myButton.Text = "Browse"; myButton.Click += new EventHandler(ShowOpenDialog); } private ShowOpenDialog(object sender, EventArgs e) { if(openFD.ShowDialog() == DialogResult.OK) // Here { filePath = openFD.FileName; } } } 公共部分类MyProgram:Form { 私人按钮myButton; 私有OpenFileDialog openFD; 私有字符串文件路径; 公共MyProgram() { 初始化组件(); myButton=新按钮(); openFD=新建OpenFileDialog(); filePath=string.Empty; myButton.Text=“浏览”; myButton.Click+=新建事件处理程序(ShowOpenDialog); } 私有ShowOpenDialog(对象发送方、事件参数) { if(openFD.ShowDialog()==DialogResult.OK)//此处 { filePath=openFD.FileName; } } } 但当我运行程序时,每次单击“浏览”(myButton)按钮时,我都会得到一个“MyProgram遇到问题,需要关闭。对于给您带来的不便,我们深表歉意。”错误。当我点击“此错误报告包含哪些数据?”链接时,错误签名包含

EventType : clr20r3 P1 : myprogram.exe P2 : 1.0.0.0 P3 : 4a49b0bf P4 : system.windows.forms P5 : 2.0.0.0 P6 : 4889dee7 P7 : 188f P8 : 32 P9 : system.typeloadexception 事件类型:clr20r3 P1:myprogram.exe P2:1.0.0.0 P3:4a49b0bf P4:system.windows.forms P5:2.0.0.0 P6:4889dee7 P7:188f P8:32 P9:system.typeloadexception 有什么想法吗?

根据,TypeLoadException是指未能从程序集加载类型

我相信您没有安装合适版本的WinForms。您正在尝试使用哪个版本的.NET和WinForms


不过,最基本的解决方案可能是重新安装.NET framework。

但我在运行其他使用OpenFileDialog的.NET应用程序时没有问题。我已经安装了.NETFramework 1.1、2.0SP2、3.0SP2和3.5SP1。使用Microsoft Visual C#2008快速版作为IDE。如何获取WinForms版本?其他信息:我选择.NET Framework 2.0作为项目中的目标框架Properties@djzmo要获取Winforms版本,请转到解决方案资源管理器,展开“引用”项目,右键单击System.Windows.Forms,然后单击“属性”。虽然,当我在我的机器上运行代码时,它工作正常,所以这可能是一个DLL地狱的问题。