2017-02-22 3 views
0

WindowsフォームアプリケーションにDateTimePickerがあります。フォームがロードされたときに、DateTimePickerに空白の値が表示され、ピッカーのValueChangedイベント用のハンドラーが作成され、ユーザーがアイコンをクリックしてカレンダーを表示したときにそのフォーマットが変更されるように、.NET Windowsフォーム - DateTimePickerのクリックイベント

しかし、空白部分(指定された形式の日付を含むもの)をクリックすると、その形式が変更されるようにDateTimePickerを設定します。これは、イベントのために私のコードです:

Private Sub dtpDateOfBirth_Click(sender As Object, e As EventArgs) Handles 
    dtpDateOfBirth.Click 

    Console.WriteLine("dtpDateOfBirth Click") 
    dtpDateOfBirth.CustomFormat = "dd/MM/yyyy" 
End Sub 

が、それは私がカレンダーを表示アイコンをクリックしない場合でも、何もしていないようです。

DateTimePickerの形式をマウスのクリックで変更するにはどうすればよいですか?

+0

あなたはDTP doesntのは、クリックイベントを公開するコードエディタのドロップダウンリストを見れば。とにかく、クリックでフォーマットが変更されることは実際には期待できません。 – Plutonix

+0

@Plutonix実際には、クリックイベントが発生します。私はそれをクリックし、私のためにSubを作った。だからこそ私はこの質問をしています。そして、それをテストしたユーザーは実際にこれを要求しました。しかし、それはまさに彼のためのフォーマットの変更ではありません。カスタムフォーマットは空白なので、最初は日付が空白になり、カレンダーを使わずに空白部分をクリックした後に入力できるようになる予定でした。 –

+0

[実際にはありません](http://i.imgur.com/yt67mxy.jpg)[MSDN](https://msdn.microsoft.com/en-us/library/system.windows.forms.datetimepicker (v = vs.110).aspx)Clickイベントは...「あなたのコードから直接使用するつもりはありません。」 – Plutonix

答えて

1

あなたはMouseDownイベントを使用することができます。

Private Sub dtpDateOfBirth_Click(sender As Object, e As EventArgs) Handles 
    dtpDateOfBirth.MouseDown 

    Console.WriteLine("dtpDateOfBirth Click") 
    dtpDateOfBirth.CustomFormat = "dd/MM/yyyy" 
End Sub 
関連する問題