Control.Invoke разворачивает внешнее исключение и вместо этого распространяет внутреннее исключение
MessageBox.Show
Звоните ниже показывает "Внутренний". Это ошибка?
private void Throw()
{
Invoke(new Action(() =>
{
throw new Exception("Outer", new Exception("Inner"));
}));
}
private void button1_Click(object sender, EventArgs e)
{
try
{
Throw();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message); // Shows "Inner"
}
}