[prg] Re[5]: Обработка исключения NullReferenceException
Здравствуйте Кирилл,
>Можете ли Вы объяснить, почему цикл >останавливается, если заключить в
>trycatch весь foreach?
try catch срабатывает лишь единожды, т.е. когда Вы заключаете в него весь
цикл, то достаточно одной ошибки, чтобы сработало try catch.
Получается, что когда в теле try { }, в котором расположен цикл целиком и в
котором отлавливается исключения, возникает данное исключение, мы выходим из
цикла и переходим к обработке исключения catch { } без возврата к циклу.
В моем же примере, Вы заключаете в тело try { } лишь ту часть кода, которая
заполняет ListBox, т.е. мы отлавливаем исключение, которое происходит при
добавлении элемента в ListBox и обработка этого исключения происходит все
еще в цикле., т.е. после обработки данного исключения в catch { } цикл
foreach продолжает свою работу.
С уважением
Владимир