Formatage en double sous forme de chaîne en C #

J'ai un Double de ce qui pourrait avoir une valeur de autour de 0.000001 à 1 000 000 000 d'.000

Je tiens à le format de ce numéro comme un string, mais conditionnellement selon sa taille. Donc si c'est très petit je veux le formater avec quelque chose comme:

String.Format("{0:.000000000}", number);

si ce n'est pas que les petits, dire 0.001 alors je veux utiliser quelque chose comme

String.Format("{0:.00000}", number);

et si c'est plus, disons de 1 000 ensuite le format:

String.Format("{0:.0}", number);

Est-il un moyen astucieux pour construire ce format de chaîne de caractères en fonction de la taille de la valeur que je vais format?

source d'informationauteur Guy