|
分類:[ASP.NET (C#)]
環境[VS2010, Framework4.5, SQLServer2012] 言語[C#]
Accessで作られたテンプレートを素に、C#へ移行しています。 TextBoxでDataBindingsを使ってSQLサーバーから取得したデータ(データセットに保存)を表示させています。 そこで、データが数値の場合に、小数点以下3桁目を四捨五入して小数点以下2桁表示にしたいです。 また小数点以下は2桁固定ではなく、0の場合は表示しないようにしたく。 Format(Value,"#.##") のような書式指定です。 TextBoxで可能でしょうか? TextBoxでなくても可能なコントロールがあれば教えてください。
できそうなのでMaskedTextBoxを使い、Mask="9.99"としてみたところ、 127.0000000 が 1.27 と表示されてしまいました。Bindingしている先のDataSetでフィールドのDataTypeはSystem.Decimal なのですが、文字列として認識されているのでしょうか。
BindingNavigatorでデータの移動を行っていますが、テキストボックスのBindingsは使わず、BindingNavigatorPositionItemのTextChangeイベントで各コントロールのTextプロパティに値をセットするようにするべきでしょうか?
|