c# - 确定是什么引发了异常?

标签 c# wpf error-handling

我有一个带有各种小程序的wpf应用程序,其中一个程序可以计算平行四边形的面积。我正在添加一些错误处理,以便如果用户在高度或宽度框中输入的值大于double.MaxValue,则会显示错误消息。如何确定哪个文本框输入触发了异常,以便可以将其与错误消息一起返回?如果重要的话,“高度”和“宽度”框位于用户控件中。

private void AreaOfParallelogramCalcBtn_Click(object sender, RoutedEventArgs e)
{
    if (Convert.ToDouble(AreaOfParallelogramHeightTxtBox.Text) > double.MaxValue == false || (Convert.ToDouble(AreaOfParallelogramWidthTxtBox.Text) > double.MaxValue == false))
    {
        MessageBox.Show("Seriously?  That is a pretty big number.  Please try again.");
    }
    else
    {
        AreaOfParallelogramResultTxtBox.Text =
        CalculateAreaOfParallelogram.Calculate(Convert.ToDouble(AreaOfParallelogramHeightTxtBox.Text),
        Convert.ToDouble(AreaOfParallelogramWidthTxtBox.Text)).ToString();
    }
}

最佳答案

使用异常源

   try
    {
    ....
    }
    Catch(Exception ex)
    {
     MessageBox.Show(ex.Source)
    }

关于c# - 确定是什么引发了异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41525857/

相关文章:

java - Thrift:向连接到服务器的所有客户端发送消息

c# - 检查打包的 WPF 应用程序是随启动运行还是手动运行?

error-handling - Applescript中的错误处理,该错误基于文件名将文件 move 到目标文件夹

python - 尝试定义删除功能,用户在其中输入名称并单击按钮,然后删除该行

javascript - JavaScript 中奇怪的意外标记非法

c# - .Net Regex - 最后一个重复字符

c# - 文本到日期转换错误 C#

c# - 检查集合中是否为 null

c# - 将新项目添加到数据网格的 ItemsSource 而不引用 Collection

c# - 在自定义 InkCanvas 中绘制 Stroke 和 DrawingVisual