文档详情

如何在DataGridView中加入自定义组件.doc

发布:2017-02-11约1.71万字共10页下载文档
文本预览下载声明
HYPERLINK /turejackon/article/details/6326442 如何在DataGridView中加入自定义组件 我想在DataGridView编辑时显示如下图控件: ? (1)创建一个自定义组件UserControl,并继承IDataGridViewEditingControl接口(用意:在DataGridView进入编辑状态时可以调用该控件),添加如下代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Text; using System.Windows.Forms; namespace Class.baseSys.controlSys { ??? public partial class UserControl1 : UserControl, IDataGridViewEditingControl ??? { ??????? int rowIndex; ??????? DataGridView dataGridView; ??????? private bool valueChanged = false;? ??????? public UserControl1() ??????? { ???????????? ??????????? InitializeComponent(); ??????? } ??????? /// summary?? ??????? /// 更改控件的用户界面 (UI),使之与指定单元格样式一致。?? ??????? /// /summary?? ??????? /// param name=dataGridViewCellStyle要用作用户界面的模型的 System.Windows.Forms.DataGridViewCellStyle。/param?? ??????? public void ApplyCellStyleToEditingControl(DataGridViewCellStyle dataGridViewCellStyle) ??????? { ??????????? this.Font = dataGridViewCellStyle.Font; ??????????? this.textBox1.ForeColor = dataGridViewCellStyle.ForeColor; ??????????? this.textBox1.BackColor = dataGridViewCellStyle.BackColor;? ??????? } ??????? /// summary?? ??????? /// 确定指定的键是应由编辑控件处理的常规输入键,还是应由 System.Windows.Forms.DataGridView 处理的特殊键。?? ??????? /// /summary?? ??????? /// param name=key一个 System.Windows.Forms.Keys,表示按下的键。/param?? ??????? /// param name=dataGridViewWantsInputKey当 System.Windows.Forms.DataGridView 要处理 keyData 中的 System.Windows.Forms.Keys时,则为 true;否则为 false。/param?? ??????? /// returns如果指定的键是应由编辑控件处理的常规输入键,则为 true;否则为 false。/returns?? ??????? public bool EditingControlWantsInputKey(Keys keyData, bool dataGridViewWantsInputKey) ??????? { ??????????? switch (keyData Keys.KeyCode)???? //设置方向键等都不令其进入编辑状态 ??????????? { ??????????????? case Keys.Left: ??????????????? case Keys.Up: ??????????????? case Keys.Down: ??????????????? case Keys.Right: ??????????????? case Keys.Home: ??????????????? case Keys.End: ??????????
显示全部
相似文档