- PR -

数値型をソースとするTextBoxに一旦入れた後空白にしたい

投稿者投稿内容
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2008-01-10 17:29
既に解決されているようですが、私も必要に迫られ、解決方法を調べて見ました。
空文字列不許可のフィールドにデータをNull値にして保存したい(atmarkit.co.jp)での、KIさんの回答、
引用:

テキストボックスのBindingオブジェクトの
NullValueプロパティ(既定はNothing)にString.Emptyを設定してはどうでしょう?


に従い

コード:
textBox.DataBinding[0].NullValue = string.Empty


とすることで、DbNullとしてデータセットに反映されました。

そして、この場合、ValidateChildren()がtrueを返すことを確認しました。

まさか、Binding.NullValueがDataSource -> バインド先だけでなく、
バインド先 -> DataSourceにも適用されているとは思いませんでした。
Binding.NullValue プロパティにもそこまで書かれてないし...

しかしBinding.NullValueはフォーマットと詳細バインドで指定できるNull値のことと思われますが、ここにstring.Emptyを指定する方法までは見出せませんでした。
これが分かれば、デザインレベルだけの指定で完結するのに...
island_town
ベテラン
会議室デビュー日: 2007/05/08
投稿数: 77
投稿日時: 2008-01-10 17:37
空白をそのままNullと出来るということでしょうか?
それは非常にありがたいです。
調べていただいてありがとうございます。

スキルアップ/キャリアアップ(JOB@IT)