C#--DataGridView添加DateTimePicker时间控件_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > C#--DataGridView添加DateTimePicker时间控件

C#--DataGridView添加DateTimePicker时间控件

 2017/11/12 16:03:42  TuringChang  程序员俱乐部  我要评论(0)
  • 摘要:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;namespaceTest{publicpartialclassForm1:Form{DateTimePickerdtp=newDateTimePicker()
  • 标签:C# view tag 控件
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace Test{          public partial class Form1: Form    {        DateTimePicker  dtp = new DateTimePicker();  //实例化一个DateTimePicker控件         Rectangle _Rectangle;        public Form1()        {            InitializeComponent();            dataGridView1.Controls.Add(dtp);  //将时间控件加入DataGridView            dtp.Visible = false;  //先不显示            dtp.Format = DateTimePickerFormat.Custom;  //设置日期格式,2017-11-11            dtp.TextChanged += new EventHandler(dtp_TextChange); //为时间控件加入事件dtp_TextChange        } /*************时间控件选择时间时****************/        private void dtp_TextChange(object sender, EventArgs e)        {            dataGridView1.CurrentCell.Value = dtp.Text.ToString();  //时间控件选择时间时,将时间内容赋给所在的单元格                    } /****************单元格被单击,判断是否是放时间控件的那一列*******************/        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;        } /***********当列的宽度变化时,时间控件先隐藏起来,否则单元格宽高变化时时间控件无法跟着变***********/        private void dataGridView1_ColumnWidthChanged(object sender, DataGridViewColumnEventArgs e)        {            dtp.Visible = false;                    } /***********滚动条滚动时,单元格位置发生变化,也隐藏时间控件,否则时间控件位置不动就乱了********/        private void dataGridView1_Scroll(object sender, ScrollEventArgs e)        {            dtp.Visible = false;        }    }}
发表评论
用户名: 匿名