@AndyC:
Yes that is correct however the issue here is simply displaying the number with a consistent number of significant digits, no matter the accuracy. All I want is a way to display a series of numbers that each could have values that are multiple orders of magnitude different from each other. So I want to display 12345 or 0.0012345. The currently available formatting options don't allow you to do that.
BTW, 0.000001234567 and 1234567000000 have no problem maintaining the stated precision (at least 7 digits for float or at least 15 for double), no matter that their values are so hugely different. Yes there are numbers they can't represent (like 1/10), but the error is still below the specified precision. Where you do lose precision is when you add/subtract values with large differences in size (this is a real problem in some types of digital filters for instance because the coefficients could have extreme large/small value).
Although none of the accuracy related issues are really very relevant to the problem I'm trying to solve.