Great - that exception always means something is null, I didn't realise it would be thrown by the cast attempt, that occured to me at the last minute. I'd always use the Convert. or a TryParse ( bool.TryParse ? ) to do conversions, and check for null first.
Christian Graus - Microsoft MVP - C++ "I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )