一个小的录入工具,录入后,在datagridview中 "时间"一列中选择时间。

解决方案 »

  1.   

    添加日期控件?
    那你需要 datagridview自定义列参考:MSDNhttp://msdn.microsoft.com/en-us/library/7tas5c80.aspx
         http://blog.csdn.net/zx13525079024/article/details/4814642
      

  2.   

    之前我发了个一样的帖子,估计太麻烦了也没有人回。http://topic.csdn.net/u/20120324/10/387d518f-6aaa-498d-ba11-2008495a7f2d.html
      

  3.   

    这里有添加日期控件代码
    http://www.xueit.com/html/2010-08/21-715684009201088154711140.html
      

  4.   

    1、新建一个日期控件。
    2、this.dgvl.Controls.Add(日期控件);
    3、在CurrentCellChanged事件中用GetCellDisplayRectangle获取CELL的值建立一个Rectangle。
    4、给日期控件的长宽高赋值。
    5、添加日期控件SelectedIndexChanged事件,给当前CELL赋值。
      

  5.   

    public partial class Form1 : Form
    {
      InitializeComponent();
      dataGridView1.Controls.Add(dtp);   //把时间控件加入DataGridView
      dtp.Visible = false;   //先不让它显示
      dtp.Format = DateTimePickerFormat.Custom;   //设置日期格式为2010-08-05
      dtp.TextChanged += new EventHandler(dtp_TextChange); //为时间控件加入事件dtp_TextChange
    }DateTimePicker   dtp = new DateTimePicker();   //这里实例化一个DateTimePicker控件
    Rectangle _Rectangle;/*************时间控件选择时间时****************/
    void dtp_TextChange(object sender, EventArgs e)
    {
        dataGridView1.CurrentCell.Value = dtp.Text.ToString();   //时间控件选择时间时,就把时间赋给所在的单元格
    }void nGridView1_ColumnWidthChanged(object sender, DataGridViewColumnEventArgs e)
    {
        dtp.Visible = false;
    }private void dataGridView1_Scroll(object sender, ScrollEventArgs e)
    {
        dtp.Visible = false;
    }private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
    {
         if (e.ColumnIndex == 0)
         {
             _Rectangle = dataGridView1.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, true); //得到所在单元格位置和大小
             dtp.Size = new Size(_Rectangle.Width, _Rectangle.Height); //把单元格大小赋给时间控件
             dtp.Location = new Point(_Rectangle.X, _Rectangle.Y); //把单元格位置赋给时间控件
             dtp.Visible = true;   //可以显示控件了
         }
         else
             dtp.Visible = false;
    }
    测试通过!求分
      

  6.   

    楼上的行是行,但是如果不对时间控件进行点击操作的话,按Tab  按键的话 时间不会显示出来的,不知道你们测试过没