教えて下さい。
あるデータを表示させる為に、DataGridViewを使用していますが、その中で、
小数点以下が発生した場合、小数点が発生していなくても”.00”と表示させたいと
考えています。
1234 ⇒ 1234.00
その為、HP上でいろいろ調べた結果、データテーブルの型もDouble型とし、表示させる
場合もFormatで小数点以下が表示されるように記述しましたが、どうしても表示されず、、、
何がおかしいでしょうか、、、
《記述内容》
dtTable = dtSet.Tables.Add("単価_TBL")
'テーブルにフィールドを追加する
'.Add("フィールド名", フィールドの型)で追加します
dtTable.Columns.Add("単価", Type.GetType("System.Double"))
GRID_View.Columns(0).DefaultCellStyle.Format = "###,##0.##" ' 単価 フォーマット
上記の記述だけでは不足でしょうか、、、
初歩的な事で申し訳ありませんが、教えて下さい。
小数点以下2桁固定にしたいのでれば、"N2" または "#,##0.00" です。
「#」だと、末尾ゼロや先頭ゼロの場合に表示されません。
> データテーブルの型もDouble型とし、
金額項目なら Doubleではなく、Decimalを採用することをお奨めします。
Double は二進小数で値を管理する都合上、0.5 や 0.25 であれば
誤差なく格納できますが、0.1 などは二進数では循環小数になるため、
近似値として扱われることになります。
一方、Decimal は文字通り十進数で扱うので、そういった誤差を防げます。
魔界の仮面弁士様、ご回答ありがとうございます。
教えて頂いたように記述したところ、全く問題なくできました!!!
本当にありがとうございました!!!