以下のスクリーンショットを参照してください。
datetime コントロールは Compact Framework の DateTimePicker であり、番号付きのボタンは標準の Button コントロールです。
DateTimePicker の矢印をクリックすると、日付を選択できるカレンダー コントロールが表示されます。ただし、ユーザーが選択したテキスト日付の任意の部分をクリックすると、それが強調表示され、ハード キーまたはオンスクリーン キーボードを使用して修正できます。この機能を標準のボタンでエミュレートしようとしています。
私は次のことを試しましたが、現在これは DateTimePicker がフォーカスを失う原因になっているだけです。
const int KEYEVENTF_KEYUP = 0x2;
const int KEYEVENTF_KEYDOWN = 0x0;
const int VK_NUMPAD1 = 0x61;
private void digitButton_Clicked(object sender, EventArgs e)
{
keybd_event(VK_NUMPAD1, 0, KEYEVENTF_KEYDOWN, 0);
keybd_event(VK_NUMPAD1, 0, KEYEVENTF_KEYUP, 0);
}
[DllImport("coredll.dll", EntryPoint = "keybd_event", SetLastError = true)]
public static extern void keybd_event
(
byte bVk,
byte bScan,
int dwFlags,
int dwExtraInfo
);