Nyní jsem také řešil jak např. otevřít Calendar pomocí klávesnice (někdo vyžaduje ovládání co nejvíce pomocí klávesnice) a nalezl jsem toto funkční a jednoduché řešení. Třeba je to něco podobného co jste hledal.
private void button1_Click(object sender, EventArgs e) {
int x = dateTimePicker1.Width - 5;
int y = dateTimePicker1.Height / 2;
IntPtr pos = (IntPtr)((y << 16) + x);
SendMessage(dateTimePicker1.Handle, 0x201, IntPtr.Zero, pos);
SendMessage(dateTimePicker1.Handle, 0x202, IntPtr.Zero, pos);
}
[System.Runtime.InteropServices.DllImport("user32.dll")]
private static extern IntPtr SendMessage(IntPtr hWnd, int msg, IntPtr wp, IntPtr lp);
|