DataGridView添加DateTimePicker
来源:互联网 发布:linux内核论坛 编辑:程序博客网 时间:2024/05/20 18:03
public class CalendarColumn : DataGridViewColumn
...{
public CalendarColumn()
: base(new CalendarCell())
...{
}
public override DataGridViewCell CellTemplate
...{
get
...{
return base.CellTemplate;
}
set
...{
if (value != null && !value.GetType().IsAssignableFrom(typeof(CalendarCell)))
...{
throw new InvalidCastException("Must be a CalendarCell ");
}
base.CellTemplate = value;
}
}
}
public class CalendarCell : DataGridViewTextBoxCell
...{
public CalendarCell()
: base()
...{
// this.Style.Format = "d ";
}
public override void InitializeEditingControl(int rowIndex, object initialFormattedValue, DataGridViewCellStyle dataGridViewCellStyle)
...{
base.InitializeEditingControl(rowIndex, initialFormattedValue, dataGridViewCellStyle);
CalendarEditingControl ctl = DataGridView.EditingControl as CalendarEditingControl;
ctl.Value = Convert.ToDateTime(this.Value.ToString());
}
public override Type EditType
...{
get
...{
return typeof(CalendarEditingControl);
}
}
public override Type ValueType
...{
get
...{
return typeof(DateTime);
}
}
public override object DefaultNewRowValue
...{
get
...{
DateTime a = Convert.ToDateTime("00:00:00");
return a;
}
}
}
class CalendarEditingControl : DateTimePicker, IDataGridViewEditingControl
...{
DataGridView dataGridView;
private bool valueChanged = false;
int rowIndex;
public CalendarEditingControl()
...{
// this.Format = DateTimePickerFormat.Time;
this.Format = DateTimePickerFormat.Custom;
this.CustomFormat = "HH:mm";
this.ShowUpDown = true;
}
public object EditingControlFormattedValue
...{
get
...{
return this.Value.ToLongTimeString();
}
set
...{
String newValue = value as String;
if (newValue != null)
...{
this.Value = Convert.ToDateTime(newValue);
}
}
}
public object GetEditingControlFormattedValue(DataGridViewDataErrorContexts context)
...{
return EditingControlFormattedValue;
}
public void ApplyCellStyleToEditingControl(DataGridViewCellStyle dataGridViewCellStyle)
...{
this.Font = dataGridViewCellStyle.Font;
this.CalendarForeColor = dataGridViewCellStyle.ForeColor;
this.CalendarMonthBackground = dataGridViewCellStyle.BackColor;
}
public int EditingControlRowIndex
...{
get
...{
return rowIndex;
}
set
...{
rowIndex = value;
}
}
public bool EditingControlWantsInputKey(Keys key, bool dataGridViewWantsInputKey)
...{
switch (key & Keys.KeyCode)
...{
case Keys.Left:
case Keys.Up:
case Keys.Down:
case Keys.Right:
case Keys.Home:
case Keys.End:
case Keys.PageDown:
case Keys.PageUp:
return true;
default:
return false;
}
}
public void PrepareEditingControlForEdit(bool selectAll)
...{
}
public bool RepositionEditingControlOnValueChange
...{
get
...{
return false;
}
}
public DataGridView EditingControlDataGridView
...{
get
...{
return dataGridView;
}
set
...{
dataGridView = value;
}
}
public bool EditingControlValueChanged
...{
get
...{
return valueChanged;
}
set
...{
valueChanged = value;
}
}
public Cursor EditingPanelCursor
...{
get
...{
return base.Cursor;
}
}
protected override void OnValueChanged(EventArgs eventargs)
...{
valueChanged = true;
this.EditingControlDataGridView.NotifyCurrentCellDirty(true);
base.OnValueChanged(eventargs);
}
}
...{
public CalendarColumn()
: base(new CalendarCell())
...{
}
public override DataGridViewCell CellTemplate
...{
get
...{
return base.CellTemplate;
}
set
...{
if (value != null && !value.GetType().IsAssignableFrom(typeof(CalendarCell)))
...{
throw new InvalidCastException("Must be a CalendarCell ");
}
base.CellTemplate = value;
}
}
}
public class CalendarCell : DataGridViewTextBoxCell
...{
public CalendarCell()
: base()
...{
// this.Style.Format = "d ";
}
public override void InitializeEditingControl(int rowIndex, object initialFormattedValue, DataGridViewCellStyle dataGridViewCellStyle)
...{
base.InitializeEditingControl(rowIndex, initialFormattedValue, dataGridViewCellStyle);
CalendarEditingControl ctl = DataGridView.EditingControl as CalendarEditingControl;
ctl.Value = Convert.ToDateTime(this.Value.ToString());
}
public override Type EditType
...{
get
...{
return typeof(CalendarEditingControl);
}
}
public override Type ValueType
...{
get
...{
return typeof(DateTime);
}
}
public override object DefaultNewRowValue
...{
get
...{
DateTime a = Convert.ToDateTime("00:00:00");
return a;
}
}
}
class CalendarEditingControl : DateTimePicker, IDataGridViewEditingControl
...{
DataGridView dataGridView;
private bool valueChanged = false;
int rowIndex;
public CalendarEditingControl()
...{
// this.Format = DateTimePickerFormat.Time;
this.Format = DateTimePickerFormat.Custom;
this.CustomFormat = "HH:mm";
this.ShowUpDown = true;
}
public object EditingControlFormattedValue
...{
get
...{
return this.Value.ToLongTimeString();
}
set
...{
String newValue = value as String;
if (newValue != null)
...{
this.Value = Convert.ToDateTime(newValue);
}
}
}
public object GetEditingControlFormattedValue(DataGridViewDataErrorContexts context)
...{
return EditingControlFormattedValue;
}
public void ApplyCellStyleToEditingControl(DataGridViewCellStyle dataGridViewCellStyle)
...{
this.Font = dataGridViewCellStyle.Font;
this.CalendarForeColor = dataGridViewCellStyle.ForeColor;
this.CalendarMonthBackground = dataGridViewCellStyle.BackColor;
}
public int EditingControlRowIndex
...{
get
...{
return rowIndex;
}
set
...{
rowIndex = value;
}
}
public bool EditingControlWantsInputKey(Keys key, bool dataGridViewWantsInputKey)
...{
switch (key & Keys.KeyCode)
...{
case Keys.Left:
case Keys.Up:
case Keys.Down:
case Keys.Right:
case Keys.Home:
case Keys.End:
case Keys.PageDown:
case Keys.PageUp:
return true;
default:
return false;
}
}
public void PrepareEditingControlForEdit(bool selectAll)
...{
}
public bool RepositionEditingControlOnValueChange
...{
get
...{
return false;
}
}
public DataGridView EditingControlDataGridView
...{
get
...{
return dataGridView;
}
set
...{
dataGridView = value;
}
}
public bool EditingControlValueChanged
...{
get
...{
return valueChanged;
}
set
...{
valueChanged = value;
}
}
public Cursor EditingPanelCursor
...{
get
...{
return base.Cursor;
}
}
protected override void OnValueChanged(EventArgs eventargs)
...{
valueChanged = true;
this.EditingControlDataGridView.NotifyCurrentCellDirty(true);
base.OnValueChanged(eventargs);
}
}
- DataGridView添加DateTimePicker
- c#datagridview中添加时间控件DateTimePicker
- Csharp DataGridView自定义添加DateTimePicker控件日期列
- Csharp DataGridView自定义添加DateTimePicker控件日期列
- C# winform 中怎么在DataGridView中动态添加DateTimePicker列
- Winform DataGridView 結合 DateTimePicker
- C# winform DataGridView DateTimePicker 控件
- dataGridView控件DateTime列插入DateTimePicker
- winform 在datagridview中使用 combobox,datetimepicker
- winform 在datagridview中使用 combobox,datetimepicker
- DataGridView控件DateTime列插入DateTimePicker
- dataGridView控件DateTime列插入DateTimePicker
- dataGridView控件DateTime列插入DateTimePicker
- 向BriskDataGrid添加DateTimePicker列
- bootstrap-datetimepicker 添加清除按钮
- 如何在Datagridview中对于某一列采用DateTimePicker
- 为DataGridView的一个列加入DateTimePicker控件
- 为DataGridView的一个列加入DateTimePicker控件(转)
- JavaMail简易教程
- 连接池相关
- 厚积薄发
- 图片等比例缩小
- 怎样安装和配置Tomcat Admin
- DataGridView添加DateTimePicker
- nice batch
- 鼠标 在 按钮上变 手形
- struts:自定义taglib的开发
- 通用ODBC API应用结构概述
- 主线程退出时(关闭应用程序时)关闭所有线程
- SQLSERVER,无法安装,挂起
- CTO专访:坚守还是追新,开发者如何应对新技术暗潮(转载的文章)
- XSLT是什么类型的语言