Korach, any idea why .Count is not in the intellisence? It is definately a better option in this situation.
I agree with the blog poster about not using try/catches when they are not necesary, but, take that with a grain of salt. It does not mean that you should always use code to prevent an situation instead of catch's to deal with a situation.
In his example he shows the speed advantage of using a non-catch based formula, 30,000 times. If on the other hand, you are looking for a 1 time event (IE: Is the app going to need to check how many panels there are 30,000 time?) the performance hit decreases significantly.
There are some situations also where a simple try/catch block can take significantly less code and be easier to read. Leading to easier maintenance.
There are even some situations where exception handling/throwing will give improved performance. I can pull up some multithreading code that will show a huge advantage in performance for using exceptions to exit threads as opposed to code to exit threads.
In short, don't rule out the use of exceptions because in one situation they are not a wise choice. And thanks for the .Count reference!
-Rick
----------------------