当我创建一个新项目时,我对未处理的异常会有一个奇怪的行为.这就是我可以重现问题的方法:
1)创建一个新的Windows窗体应用程序(C#,. NET Framework 4,VS2010)
2)将以下代码添加到Form1_Load处理程序:
int vara = 5, varb = 0;
int varc = vara / varb;
int vard = 7;
Run Code Online (Sandbox Code Playgroud)
我希望VS中断并在第二行显示未处理的异常消息.但是,会发生的是第三行只是跳过而没有任何消息,应用程序一直在运行.
我现有的C#项目没有这个问题.所以我想我的新项目是用一些奇怪的默认设置创建的.
有没有人知道我的项目有什么问题?
我试过检查Debug-> Exceptions中的方框.但即使我在try-catch块中处理异常,执行也会中断; 这也不是我想要的.如果我没记错的话,在这个对话框中有一个名为"未处理的异常"的列或者类似的东西,这会让我感到非常兴奋.但在我的项目中只有一列("Thrown").
我在c#webservice应用程序中遇到问题.异常不再处理某一点.应用程序只需在没有任何进一步的消息/故障异常的情 这是发生的事情:
问题:
我到目前为止采取的步骤或其他可能有用的信息:
它来了!我的原始代码如下所示:
try
{
//some code here throws an exception
}
catch (Exception ex)
{
throw new Exception("some message", ex); //after this line no activity anymore
}
Run Code Online (Sandbox Code Playgroud)
当我将其更改为:
Exception myex = null;
try
{
//some code here throws an exception
}
catch (Exception ex)
{
myex = new Exception("some message", ex);
return null;
}
finally
{
if (myex!=null) throw myex;
}
Run Code Online (Sandbox Code Playgroud)
我的问题解决了!?有没有人对这种行为有解释?我希望依靠正常的异常处理机制.
另一句话:当我在try {}部分之前放置一个'throw new Exception()'时,我的代码运行正常(但当然,我不希望这样).
任何人都有任何线索?提前致谢!
在DataGridView中,我希望在编辑单元格时根据字符串长度扩展单元格大小.Excel也是如此.
在DataGridView中,进入编辑模式时,DataGridViewTextBoxEditingControl将放置在单元格位置.我试图改变这个控件的边界/大小,但结果只是我所需大小的短暂闪烁.它直接覆盖了原始的截断方式.
关于如何使这个工作的任何想法?
谢谢,
蒂莫