2

TextBoxコントロールに日付値を持つフォームがあります。このフォームは、DataSetとSQL 2005 CEデータベースに対してBindingSourceを使用してデータバインディングを使用します。 日付の書式はどこで制御できますか?道に沿ったプロパティのどこにも、私は時間の部分を取り除く可能性を見ました。データバインドWinFormsフォーム - 日付の書式設定方法

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

答えて

6

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

あなたは

+0

うわー、どのように私はそれを見ていない日付時刻データ型を選択し、必要に応じてなどだけで日付や時間を取り除くことができますか...? – cdonner

6

イベントを処理することができますBinding.Formatイベントは、日付を書式設定します。そしてその対応部分Binding.Parseを使用して、TextBoxからの入力を解析します。

など。

TextBox.DataBindings["Text"].Format += new ConvertEventHandler(FormatDateEventHandler); 
... 
private void FormatDateEventHandler (object sender, ConvertEventArgs e) 
{ 
    if (! Convert.IsDBNull (e.Value)) 
    { 
     e.Value = ((DateTime)e.Value).ToString ("d", CultureInfo.CurrentCulture); 
    } 
} 
関連する問題