datetimepicker 如何用代码打开,因为特殊原因,不能用鼠标去点开, 想用代码去展开这个控件,有没有什么办法,谢谢.

解决方案 »

  1.   

    用第三方的日期控件,直接显示的就是完全展开的日历,干嘛要用程序展开一个DateTimePicker呢
      

  2.   

            [DllImport("user32.dll")]
            private static extern IntPtr SendMessage(IntPtr hWnd, UInt32 Msg, int wParam, int lParam);
            private const int VK_F4 = 115;
            private const int WM_KEYDOWN = 0x0100;
     
            private void button1_Click(object sender, EventArgs e)
            {
                SendMessage(dateTimePicker1.Handle, WM_KEYDOWN, VK_F4, 0); 
            }
      

  3.   

    SendMessage(DateTimePicker1.Handle,WM_SYSKEYDOWN,VK_DOWN,0); 
    http://archive.cnblogs.com/a/1548940/
      

  4.   

    请问一下 [System.Runtime.InteropServices.DllImport("user32.dll")]    是什么意思呀, 是不是引用命名空间呢,假如是引用命名空间的话,我只能打到
    using System.Runtime.InteropServices.ComTypes
     无做不到后面挂着DllImport("user32.dll")]     ,请高人指点,非常感谢.
      

  5.   

    用不了,老是报错,同时我也不明白 [DllImport("user32.dll")] 的意思
      

  6.   


    其实2楼的方法已经很简洁了如果你不想这样做,可以通过UIAutomation类来做,也是通过模拟相应操作的,不过比2楼的稍微麻烦一些
      

  7.   

    [DllImport("user32.dll")]
     这个怎么用,直接打上就好了吗,需不需要引用什么命名空间呢
      

  8.   

    引用using System.Runtime.InteropServices;