2


1

TextBoxコントロールに日付値を含むフォームがあります。 フォームは、DataSetおよびSQL 2005 CEデータベースに対してBindingSourceを使用してデータバインディングを使用します。 日付のフォーマットはどこで制御できますか? 例えば、途中でプロパティのどこにも私は時間部分を削除する可能性を見ませんでした。

もちろんデータベースでそれを実行し、DateTimeの代わりに文字列を渡すこともできますが、これは回避策であり、解決策ではありません。

2 Answer


7


イベントの* Binding.Format イベントを処理して日付をフォーマットできます。 そして、TextBoxからの入力を解析するための、対応する Binding.Parse *。

例えば。

TextBox.DataBindings ["Text"]。Format = new ConvertEventHandler(FormatDateEventHandler);
...
private void FormatDateEventHandler(オブジェクトセンダ、ConvertEventArgs e){if(! Convert.IsDBNull(e.Value)){e.Value =((DateTime)e.Value).ToString( "d"、CultureInfo.CurrentCulture); }}


6


デザイナーを使用して、テキストボックスを選択し、[プロパティ]タブをクリックして、(データバインディング) - [詳細設定]を選択します。

ここでは、Date Timeデータ型を選択し、必要に応じて日付や時刻だけを削除することができます。