c#datagridview中添加時間控件DateTimePicker

  DateTimePicker dtp = new DateTimePicker();
        Rectangle _Rectangle; //用來判斷時間控件的位置

 

 


        private void BindGvApply()
        {
            dgv.Controls.Add(dtp);
            dtp.Visible = false;  //先不讓它顯示
            dtp.Format = DateTimePickerFormat.Custom;  //設置日期格式爲2010-08-05
            dtp.TextChanged += new EventHandler(dtp_TextChange);
        }

        private void dtp_TextChange(object sender, EventArgs e)
        {
            dgv.CurrentCell.Value = dtp.Text.ToString();

            //時間控件選擇時間時,就把時間賦給所在的單元格
        }

 

 

        private void gvApply_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            DataGridViewTextBoxCell starttime = ((DataGridViewTextBoxCell)dgv.Rows[e.RowIndex].Cells["WeekTimeBeg"]);
            if (e.ColumnIndex == 6)
            {
                _Rectangle = dgv.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;  //可以顯示控件了
                starttime.Value = DateTime.Now;


            }
            else
            {
                dtp.Visible = false;
            }

        }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章