- PR -

DateTimePickerのカレンダーを表示させたい

1
投稿者投稿内容
goronoteiri
会議室デビュー日: 2007/08/24
投稿数: 4
投稿日時: 2009-04-08 15:09
お世話になります。

環境:C# .NET Framework 2.0

DateTimePickerの▼ボタンを押すとカレンダーが表示されますが、
これをプログラムで指示して表示させたいのです。
そのようなメソッドを探しても見つからなかったので、
DateTimePickerを継承したクラスを作って外部からOnDropDown()を
呼び出せるようにしたりしてみたのですがダメ。

結局WM_LBUTTONDOWNをSendMessageすればできたのですが、
これでは座標を直接指定しているので色々と不安です。

IntPtr handle = myDateTimePicker1.Handle;
IntPtr lparam = new IntPtr( 128 | (5<<16));
IntPtr wparam = new IntPtr(0x0);
SendMessage(handle, 0x0201, wparam, lparam);

何かもっといい方法はないでしょうか?

よろしくお願いいたします。
jiji
会議室デビュー日: 2009/03/10
投稿数: 16
投稿日時: 2009-04-08 18:36
イベントを発生させると面倒そうなので、
イベント処理をMonthCalenderを使って書いちゃったほうが楽な気がします。
goronoteiri
会議室デビュー日: 2007/08/24
投稿数: 4
投稿日時: 2009-04-09 14:19
ありがとうございます。

ちょっとその方法を試してみます。
1

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