全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C#利用DataGridView实现数据的快速输入网络编程 2008-03-11 16:04:03 阅读313 评论0 字号:大中小订阅 在做管理软件时,常常需要表格输入功能。表格输入极大地加快了数据输入,提高了工作效率,当然也提高了软件的竞争性。笔者最近用C#在做一套CRM时,成功地使用C# 2005里面的表格控件DataGridView实现了表格输入功能,现在就把具体实现与各位分享: 1. 初始化工作 (1) 在Vs 2005 里面新建一个C# WinForm 应用程序: DataGridViewTest (2) 在窗体Form1上拖一个DataGridView控件:DataGridView1 (3) 在DataGridView1里添加两个列: Column1: 类型:DataGridViewComboBoxColumn HeaderText:时间 DataPropertyName:DutyTime Column2: 类型:DataGridViewTextBoxColumn HeaderText:时间 DataPropertyName:DutyTime (4)在Form1类中添加两个私有属性: private DataTable m_Table;/输入组合框控件的下拉数据 private DataTable m_DataTable;/与表格绑定的DataTable,即用户输入的最终数据 (5)在Form1类里面定义一个结构体 public struct MyRowData public MyRowData(int no, string enDay, string cnDay) No = no; EnDay = enDay; CnDay = cnDay; public int No; public string EnDay; public string CnDay; (6) 在Form1的load事件Form1_Load(object sender, EventArgs e) 加上以下初始化代码: this.dataGridView1.AllowUserToAddRows = true; this.dataGridView1.AllowUserToDeleteRows = true; this.dataGridView1.AutoGenerateColumns = false; DataColumn dc1, dc2, dc3 dc1 = new DataColumn(No, typeof(int); dc2 = new DataColumn(EnDay, typeof(string); dc3 = new DataColumn(CnDay, typeof(string); m_Table.Columns.Clear(); m_Table.Columns.AddRange(new DataColumn dc1, dc2, dc3 ); MyRowData Datas = new MyRowData7 new MyRowData( 1,Monday,星期一), new MyRowData( 2,Tuesday,星期二), new MyRowData( 3,Wednesday,星期三 ), new MyRowData( 4,Thursday,星期四 ), new MyRowData( 5, Friday,星期五), new MyRowData( 6,Saturday,星期六), new MyRowData( 7,Sunday,星期日) ; this.m_Table.Rows.Clear(); foreach (MyRowData iData in Datas) this.m_Table.Rows.Add(iData.No, iData.EnDay, iData.CnDay); DataColumn dataDc1, dataDc2; dataDc1 = new DataColumn(DutyTime, typeof(int); dataDc2 = new DataColumn(DutyPerson, typeof(string); m_DataTable.Columns.Clear(); m_DataTable.Columns.AddRange(new DataColumn dataDc1, dataDc2); m_DataTable.Rows.Clear(); Column1.DataSource = this.m_Table; Column1.DisplayMember = CnDay; Column1.ValueMember = No; this.dataGridView1.DataSource = m_DataTable; 2.消息处理(核心) protected override bool ProcessCmdKey(ref System.Windows.Forms.Message msg, System.Windows.Forms.Keys keyData) /激活回车键 int WM_KEYDOWN = 256; int WM_SYSKEYDOWN = 260; bool IsDataGridView1 = false; if (this.ActiveControl = this.dataGridView1) IsDataGridView1 = true; else if (this.ActiveControl is IDataGridViewEditingControl) if( (this.ActiveControl as IDataGridViewEditingControl).EditingControlDataGridView = this.dataGridView1) IsDataGridView1 = true; if (IsDataGridView1) /是否处于DataGridView1 上 if (msg.Msg = WM_KEYDOWN msg.Msg = WM_SYSKEYDOWN) switch (keyData) case Keys.Delete: if (this.dataGridView1.CurrentCell != null & this.dataGridView1.CurrentCell.RowIndex this.m_DataTable.Rows.Count) this.m_DataTable.Rowsthis.dataGridView1.CurrentCell.RowIndex.Delete(); this.m_DataTable.AcceptChanges(); break; case Keys.Enter: if (this.dataGridView1.CurrentCell is DataGridViewComboBoxCell this.dataGridView1.CurrentCell is DataGridViewTextBoxCell )/处于输入格 / SendKeys.Send(F4); if (this.ActiveControl is System.Windows.Forms.DataGridViewComboBoxEditingControl this.ActiveControl is System.Windows.Forms.DataGridViewTextBoxEditingControl ) SendKeys.Send(Tab); else/非输入状态,将转入输入状态 if (this.dataGridView1.CurrentCell is Da
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年微特电机及组件制造行业市场深度调查及投资规划报告及未来五至十年区域市场差异与机会
- 卫星互联网星座组网真实进度、用户侧渗透兑现与商业化收入闭环核验深度调研报告
- 2027浙商银行金华分行校园招聘考试备考题库及答案解析
- 2026年广宗县教师招聘笔试备考题库及答案解析
- 2026年霍邱县教师招聘笔试模拟试题及答案解析
- 2026贵州铜仁市德江县消防救援大队招聘政府专职消防员9人笔试参考题库及答案解析
- 2026年阳高县教师招聘考试参考题库及答案解析
- 2026禄劝彝族苗族自治县卫健系统“英才聚禄”县外公开选调医务人员到县级医疗卫生机构工作笔试备考题库及答案解析
- 2026年绛县教师招聘笔试备考试题及答案解析
- 2026年大名县教师招聘笔试备考试题及答案解析
- 2026秋季新学期班干部聘任仪式
- 2026年版《2型糖尿病缓解专家共识》核心全文(权威完整版)
- 2027届广州中考英语听说考试专项训练
- 2026年高考地理一轮复习:湘教版必修第一册必背知识点考点提纲
- 湖北省黄石市黄石港区四校2024-2025学年七年级上学期第一次月考数学试题
- 2026《矿业权价值评估》真题及答案(考生回忆版)
- 胸痛的诊断与鉴别诊断
- 2025年10月自考13793计算机程序设计基础试题及答案
- 安徽省国资委职称评审化工专业考试题库及答案
- 2026届新高考英语冲刺热点复习高考英语短文写作
- 《国庆节英语知识分享》课件
评论
0/150
提交评论