当前位置:文档之家› 超有用的DataGridView 取得当前单元格的内容实现模糊查找

超有用的DataGridView 取得当前单元格的内容实现模糊查找

超有用的DataGridView 取得当前单元格的内容实现模糊查找
超有用的DataGridView 取得当前单元格的内容实现模糊查找

提醒:本程序基于一个界面实现不弹窗体的情况下实现的。

放入两个datagridview将第二个的Visible默认值改为false!

第二步

添加第一个datagridview的cellclick事件

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)

{

int dgvX = dataGridView1.Location.X;

int dgvY = dataGridView1.Location.Y;

Int cellX=this.dataGridView1.GetCellDisplayRectangle(e.ColumnIndex,e.RowInde x, false).Location.X + this.dataGridView1.Location.X;

int cellY = this.dataGridView1.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, false).Location.Y + this.dataGridView1.Location.Y;

connectClass.form2X = e.RowIndex;

connectClass.form2Y = e.ColumnIndex; //获取要编辑单元格位置

panel1.Location = new Point(cellX, cellY+25); //(全屏的情况下)获取当前修改单元格位置便于panel显示

panel1.Visible = true; //将panel 显示

}

第三步

添加第二个datagridview的click事件将点击的信息显示在第一个的编辑单元格中

private void dataGridView2_Click(object sender, EventArgs e)

{

dataGridView1.Rows[connectClass.form2X].Cells[connectClass.form2Y].Value = dataGridView2.Rows[dataGridView2.CurrentRow.Index].Cells[2].Value.ToString( );

this.panel1.Visible = false; //将panel再度隐藏

}

微软C#中DataGridView控件使用方法

DataGridView动态添加新行: DataGridView控件在实际应用中非常实用,特别需要表格显示数据时。可以静态绑定数据源,这样就自动为DataGridView控件添加相应的行。假如需要动态为DataGridView控件添加新行,方法有很多种,下面简单介绍如何为DataGridView控件动态添加新行的两种方法: 方法一: int index=this.dataGridView1.Rows.Add(); this.dataGridView1.Rows[index].Cells[0].Value = "1"; this.dataGridView1.Rows[index].Cells[1].Value = "2"; this.dataGridView1.Rows[index].Cells[2].Value = "监听"; 利用dataGridView1.Rows.Add()事件为DataGridView控件增加新的行,该函数返回添加新行的索引号,即新行的行号,然后可以通过该索引号操作该行的各个单元格,如dataGridView1.Rows[index].Cells[0].Value = "1"。这是很常用也是很简单的方法。 方法二: DataGridViewRow row = new DataGridViewRow(); DataGridViewTextBoxCell textboxcell = new DataGridViewTextBoxCell(); textboxcell.Value = "aaa"; row.Cells.Add(textboxcell); DataGridViewComboBoxCell comboxcell = new DataGridViewComboBoxCell(); row.Cells.Add(comboxcell); dataGridView1.Rows.Add(row);

DataGridView的用法

在C# WinForm下做过项目的朋友都知道,其中的DataGridView控件默认只支持DataGridViewButtonColumn、DataGridViewCheckBoxColumn、DataGridViewComboBoxColumn、DataGridViewImageColumn、DataGridViewLinkColumn和DataGridViewTextBoxColumn六种列类型,如果你想要在DataGridView的列中添加其它的子控件,则需要自己实现DataGridViewColumn和DataGridViewCell,这就意味着你需要从现有的列中继承并改写一些方法,如实现一个支持单选按钮的列,或支持三种选择状态的多选按钮的列。 上面两个截图分别为RadioButton列和支持三种状态的CheckBox列在DataGridView中的实现效果,我是在Windows 2003中实现的,因此显示的效果跟在XP和Vista下有些区别,Vista下CheckBox的第三种状态(不确定状态)显示出来的效果是一个实心的蓝色方块。 下面我看具体来看看如何实现这两种效果。 要实现自定义的DataGridView列,你需要继承并改写两个类,一个是基于DataGridViewColumn的,一个是基于DataGridViewCell的,因为

RadionButton和CheckBox的实现原理类似,因此我们可以将这两种列采用同一种方法实现。创建DataGridViewDisableCheckBoxCell和DataGridViewDisableCheckBoxColumn两个类,分别继承自DataGridViewCheckBoxCell和DataGridViewCheckBoxColumn。代码如下: public class DataGridViewDisableCheckBoxCell: DataGridViewCheckBoxCell { public bool Enabled { get; set; } // Override the Clone method so that the Enabled property is copied. public override object Clone() { DataGridViewDisableCheckBoxCell cell = (DataGridViewDisableCheckBoxCell)base.Clone(); cell.Enabled = this.Enabled; return cell; } // By default, enable the CheckBox cell. public DataGridViewDisableCheckBoxCell() { this.Enabled = true; } // Three state checkbox column cell protected override void Paint(Graphics graphics, Rectangle clipBounds, Rectangle cellBounds, int rowIndex, DataGridViewElementStates elementState, object value, object formattedValue, string errorText, DataGridViewCellStyle cellStyle, DataGridViewAdvancedBorderStyle advancedBorderStyle, DataGridViewPaintParts paintParts) { // The checkBox cell is disabled, so paint the border, background, and disabled checkBox for the cell. if (!this.Enabled) { // Draw the cell background, if specified. if ((paintParts & DataGridViewPaintParts.Background) == DataGridViewPaintParts.Background) { SolidBrush cellBackground = new SolidBrush(cellStyle.BackColor); graphics.FillRectangle(cellBackground,

C++程序设计中数据的有效性检查的意义和方法

C++程序设计中数据的有效性验证 l 数据有效性验证的意义 C 语言为了给程序员更大的空间,在编译时对语法限制并不严格,例如不会检查数组是否越界,也不检查类型是否匹配。编译通过的程序,在运行时可能会因为输入的数据与程序中期望的数据不一致而导致运行错误。例如在求三角形面积的程序中,需要用户输入三角形的三条边长,再根据边长求面积,用户输入的三个代表边长的数据有可能不能构成一个三角形,这样计算出来的就是一个没有意义的结果。通过验证用户输入数据的有效性,可以防止由于这类无效输入数据所导致的潜在问题,并有助于找到代码中的 bug。数据的有效性验证实际上就是检查数据是否在程序能接受的合理范围,下面就几种常见的数据有效性情况进行讨论。 2 数据有效性验验证的类别 2.1 验证数据类型 程序中每个变量在使用前都要先进行声明,即定义每个变量所属的类型,类型决定了变量中可存储的数据类型及分配的存储空间长度,例如定义存储年份、月份的变量一般为整型。变量的类型也决定了变量可以进行的运算,例如在算术运算中,通常是只能是整形、实型或字符型数据。如果用户输入的数据与程序中定义的变量类型不匹配就会导致运行异常。验证数据类型就是在给变量赋值时判断数据跟类型是否匹配,从根本上防止用户输入错误,即使发生了错误,也要在第一时间通知用户。 2.2 验证数据的范围 验证数据的范围,是指验证某一数据是否介于某一范围之间或不在某一范围之间,如表示年龄一般为正整数,表示时间中的月份的取值是 l一12,天数是 l一31,表示百分制成绩时一般在 0至 100范围,而性别的取值只能为“男”或“女”,输入口令时经常需要验证口令的长度是否满足一定要求,类似的例子还很多。 2.3 验证数据的合理性 有时输入的几个数据之间需满足一定的约束关系才是合理的,比如:输入三角形的三条边时需要验证这三个数是否能构成一个三角形,代表三角形的三条边长的三个数据之间必须满足的条件是:各条边的值都大于 0,且任两条边的和大于第三条边,任两条边的差小于第三条边。所以在求三角形面积之前必须先验证数据的合理性。现实生活中这样的例子还很多,如在录入用户信息的程序中,地址如果为北京,那么邮政编码就不应该是北京以外地区的邮编,还有出生日期和年龄这两个数据之间也存在一定的约束关系,在为学生分配宿舍时需要考虑与性别、所在班级这些数据之间的合理性。在程序中对于这些具有特定含义的数据很多时候都需要进行合理性验证。 2.4 数据的一致性 数据一致性通常指几个相互关联的数据之间的逻辑关系是否正确和完整。而数据不一致性是指数据之间相互矛盾。导致数据不一致的原因主要有以下几种:一是由于数据冗余造成的,出现这种情况往往是由于同一数据分别存储在不同地方,如果更新时没有对重复存放的数据进行一致性地更新,就会造成同一数据有多个不同的取值;二是由于并发控制不当造成的,这种情况是由于多用户共享数据,在多个用户同时对共享数据进行更新时,如果没有采取相应的同步措施,就会导致不同用户访问同一数据时结果不一致; 3 数据有效性验证的应用

DataGridView控件用法合集

DataGridView控件用法合集 目录 DataGridView控件用法合集(一) 1. DataGridView当前的单元格属性取得、变更 2. DataGridView编辑属性 3. DataGridView最下面一列新追加行非表示 4. DataGridView判断当前选中行是否为新追加的行 5. DataGridView删除行可否设定 6. DataGridView行列不表示和删除 DataGridView控件用法合集(二) 7. DataGridView行列宽度高度设置为不能编辑 8. DataGridView行高列幅自动调整 9. DataGridView指定行列冻结 10. DataGridView列顺序变更可否设定 11. DataGridView行复数选择 12. DataGridView选择的行、列、单元格取得 DataGridView控件用法合集(三) 13. DataGridView指定单元格是否表示 14. DataGridView表头部单元格取得 15. DataGridView表头部单元格文字列设定 16. DataGridView选择的部分拷贝至剪贴板 17.DataGridView粘贴 18. DataGridView单元格上ToolTip表示设定(鼠标移动到相应单元格上时,弹出说明信息) DataGridView控件用法合集(四) 19. DataGridView中的ContextMenuStrip属性 20. DataGridView指定滚动框位置 21. DataGridView手动追加列 22. DataGridView全体分界线样式设置 23. DataGridView根据单元格属性更改显示内容 24. DataGridView新追加行的行高样式设置る 25. DataGridView新追加行单元格默认值设置 DataGridView中输入错误数据的处理(五) 26. DataGridView单元格数据错误标签表示 27. DataGridView单元格内输入值正确性判断 28. DataGridView单元格输入错误值事件的捕获 DataGridView控件用法合集(六) 29. DataGridView行排序(点击列表头自动排序的设置) 30. DataGridView自动行排序(新追加值也会自动排序) 31. DataGridView自动行排序禁止情况下的排序 32. DataGridView指定列指定排序 DataGridView控件用法合集(七) 33. DataGridView单元格样式设置 34. DataGridView文字表示位置的设定 35. DataGridView单元格内文字列换行 36. DataGridView单元格DBNull值表示的设定 37. DataGridView单元格样式格式化 38. DataGridView指定单元格颜色设定

我国股市有效性的检验

我国股市有效性的检验 摘要:股票市场在资本市场中占据极其重要的地位,在当今市场经济的条件下,股票市场已经成为企业融资、大众投资的重要领域,是经济的晴雨表,对优化资源配置及经济发展起到极大的促进作用。多年来国内外学者热衷于对股市的研究,证券投资技术分析方法更是经常被投资大众津津乐道。技术分析常常带有神秘色彩,如,GARCH模型、Hurts指数、R_S分析法和随机游走模型等。这些吸引越来越多的学者对此进行研究,本文主要以两种种证券投资分析方法对我国近期的市场有效性进行研究,一种是比较经典的随机游走模型,另一种是GARCH模型。关键字:市场有效性、随机游走、GARCH模型 1.1我国股市有效性理解以及我国有效市场的弱势有效 股票市场的有效性是指任何与股票相关的信息(包括公开信息与内幕信息)都能够及时有效地反映到股票价格上,任何技术分析和信息的获得都无法使投资者获得超额收益。Roberts最早将EMH按证券价格反映的信息集不同分为了弱势有效、半强式有效和强势有效。弱势有效是证券市场效率的最低层次即投资者无法通过股票的历史信息获得超额收益,早期的验证方法是应用随机游走模型,随机游走模型是一种经典的方法但是却有其局限性,此模型比鞅假设要求更为严格,所以即使结果偏离随机游走模型,也并不能代表非弱势有效;半强式有效是指投资者无法通过股票的公开信息获得超额收益,目前通常用实践研究法加以检验;强有效市场指投资者无法通过任何信息包括内幕信息在市场上获得超额收益,检验研究对象为专业投资者或内幕人士的收益率。 我国股票市场的有效性研究主要从1994年俞乔发表的《市场有效、周期异动与股价波动》开始,1995年,宋颂兴、金伟根选用1993年1月第一周至1994年10月第现代经济信息以1992年至1999年上证综合指数为样本,用数理统计方法进行游程检验、自相关检验和正态性检验,结论是中国股市1996年前处于无效阶段,但有效性逐步增强,向弱式有效过渡,1997年后接近弱式有效,但离半强式有效甚远。之后多位研究者关于中国股票弱势有效性的分析,确定了我国如今的股票市场的弱势有效性。 1.2随机游走和市场有效性检验 随机游走和市场有效性假设认为如果股票市场股票价格是随机的,因此从该市场获得的收益将是不可预测的,因此我们接受市场是有效的相反,如果市场的收益是可以预测的,则价格是非随机游走的,该市场是无效的。对于市场的无效有以下几种原因,(1)Fam a(1970)的论文认为由于市场对信息反应的滞后造成;(2)Smith,Jefferis and Ryoo(2002)论文认为市场处于非均衡价格是由于资本定价和风险溢价的扭曲造成;(3)股票市场的交易制度也是该市场无效。 1.2.1数学方法的介绍 单位根检验是验证金融随机变量是否满足随机游走的有效方法,如果某时间序列存在单位根,则该序列的零假设是不可拒绝的,因而该序列满足随机游走。以下方法基于广义最小二乘法的趋势y d t ,我们有: 其中的(1) MZ d t =MZ d a *MSB (2)

datagridview在vbnet中的操作技巧.

DataGridView在https://www.doczj.com/doc/045675932.html,中的操作技巧目录: 1、取得或者修改当前单元格的内容 2、设定单元格只读 3、不显示最下面的新行 4、判断新增行 5、行的用户删除操作的自定义 6、行、列的隐藏和删除 7、禁止列或者行的Resize 8、列宽和行高以及列头的高度和行头的宽度的自动调整 9、冻结列或行 10、列顺序的调整 11、行头列头的单元格 12、剪切板的操作 13、单元格的ToolTip的设置 14、右键菜单(ContextMenuStrip的设置 15、单元格的边框、网格线样式的设定 16、单元格表示值的设定 17、用户输入时,单元格输入值的设定 18、设定新加行的默认值

1、DataGridView 取得或者修改当前单元格的内容: 当前单元格指的是DataGridView 焦点所在的单元格,它可以通过DataGridView 对象的CurrentCell 属性取得。如果当前单元格不存在的时候,返回Nothing(C#是null [https://www.doczj.com/doc/045675932.html,] ' 取得当前单元格内容MessageBox.Show(DataGridView1.CurrentCell.Value ' 取得当前单元格的列Index MessageBox.Show(DataGridView1.CurrentCell.ColumnIndex ' 取得当前单元格的行Index MessageBox.Show(DataGridView1.CurrentCell.RowIndex 另外,使用DataGridView.CurrentCellAddress 属性(而不是直接访问单元格来确定单元格所在的行:DataGridView.CurrentCellAddress.Y 和 列:DataGridView.CurrentCellAddress.X 。这对于避免取消共享行的共享非常有用。 当前的单元格可以通过设定DataGridView 对象的CurrentCell 来改变。可以通过CurrentCell 来设定 DataGridView 的激活单元格。将CurrentCell 设为Nothing(null 可以取消激活的单元格。[https://www.doczj.com/doc/045675932.html,] ' 设定(0, 0 为当前单元格 DataGridView1.CurrentCell = DataGridView1(0, 0 -------------------------------------------------------------------------------- 2、DataGridView 设定单元格只读:

环境检测数据的有效位数

第八章监测数据的有效位数 监测数据报出的位数,对监测结果的准确性和数据资料的统计整理都是十分重要的。监测数据的有效位数应与测试系统的准确度相适应。记录测试数据时,只保留一位可疑数字。 1、大气监测数据(以mg/m3计) ⑴降尘(吨/月·平方公里)取小数点后一位;硫酸盐化速率(SO 3 mg/100cm2 碱片·日)、CO取小数点后二位;SO 2、NO X 、TSP、光化学氧化剂取小数点后三位。 ⑵其它用比色法分析的项目取小数点后三位。 ⑶气温(℃)、风速(m/s)、气压(hPa)取小数点后一位;湿度(%)保留整数位。 2、环境水质监测数据(以mg/l计)。 ⑴重量法分析项目:悬浮物测值<1000时取整数位,测值>1000时取三位有效数字。 ⑵容量法分析项目:溶解氧、总硬度取小数点后一位;高锰酸盐指数测值>10 时取小数点后一位,测值<10时取小数点后二位;COD cr 、BOD 5 测值>100时取三位 有效数字,100>测值>10时取小数点后一位,测值<10时取小数点后二位。 ⑶分光光度法分析项目:亚硝酸盐氮、挥发酚、氰化物、六价铬、总铬、砷、总磷、溶解性磷酸盐等取小数点后三位;硝酸盐氮、氨氮、氟化物、总氮、石油类、凯氏氮取小数点后二位。 ⑷原子吸收分光光度法分项目:铅、铁、镍、锰等取小数点后二位,石墨炉法测定时取小数点后四位;锌、镉取小数点后三位,镉用石墨炉法测定时取小数点后五位;钙、镁、钠、钾等取小数点后果二位。 ⑸冷原子吸收法测汞取小数点后四位,冷原子荧光法测汞取小数点后五位。 ⑹气相色谱法分析项目(以μg/l计):DDT、六六六等取小数点后二位。 ⑺硫酸盐、氯化物测值取三位有效数字。 ⑻其它分析项目:盐度(%)、pH、氟化物(电极法)、电导率(μs/cm×100)、透明度(m)等取小数点后二位;水温和气温(℃)、水深(m)、气压(hPa)等取小数点后一位。 1、降水监测数据

备份数据有效性验证_方案

带库备份数据一致性有效性验证方案 冯亚峰 2011/10/17 一.备份作业数据分析 通过对磁带备份服务器的备份作业进行考察,对正在运行的备份作业进行统计,目前正在运行的备份作业如下: 1、K3 备份内容:https://www.doczj.com/doc/045675932.html, sql数据库 备份频率:每天 数据包大小:7.3G 生效日期:2008-6-11 2、xxx-pdm-sql 备份内容:xxx-pdmserver sql数据库 备份频率:每天 数据包大小:20.1G 生效日期:2009-2-24 3、xxx-erp-sql-完全 备份内容:https://www.doczj.com/doc/045675932.html, sql数据库 备份频率:每周 数据包大小:0.96G 生效日期:2007-11-23 4、K3每周 备份内容https://www.doczj.com/doc/045675932.html, sql数据库 备份频率:每周 数据包大小:7.3G 生效日期:2008-6-11 5、xxx-dlp 备份内容:https://www.doczj.com/doc/045675932.html, sql\cobraDGServer库 备份频率:每周 数据包大小:54M 生效日期:2009-12-15 6、OA_Full 备份内容:Lotus Domino数据库\F:\program file\lotus\domino\data文件夹 备份频率:每周 数据包大小:144G 生效日期:2007-12-3

7、xxx-pdm-ftp 备份内容:xxx-pdmserver\I:\pdmftp文件夹 备份频率:每周 数据包大小:153G 生效日期:2009-2-24 8、eMail_Full 备份内容:\F:\program file\*.* /subdir |F:\*.* /subdir 备份频率:每周 数据包大小:数据量过大,从未成功备份过。 生效日期:2007-12-10 9、CAPP-SQL 备份内容:xxx-capp-sql sql数据库 备份频率:每周 数据包大小:8G 生效日期:2011-5-4 10、xxx-AD 备份内容:xxx-AD \系统状态\active dirctory\windows ntds xxx-AD \系统状态\com+ class registration database xxx-AD \系统状态\registry xxx-AD \系统状态\system files xxx-AD \系统状态\sysvol 备份频率:每周 数据包大小:1.4G 生效日期:2009-11-2 通过对磁带备份目前进行的10个作业进行分析,我们可以看到作业1、2、3、4、5、9这六项作业都是对系统SQL数据库进行备份,6号作业是对domino数据库进行备份,7、8号作业是对文件夹进行备份,其中8号作业由于数据量太大从未成功备份过,因此建议永久性停止该条作业。10号作业是对系统状态(文件)进行备份。 二、备份数据一致性和有效性检验分析 要对这些备份的数据进行一致性检验,确保备份数据和备份作业时的生产系统的数据完全一致,这种一致性检验是无需人工对每个数据表来校验核对的,只需要在备份策略上加上“备份后一致性检查”这条选项就能保证备份后的数据与生产系统完全一致,如果发现不一致,备份服务器校验后就会报错,技术人员再进行技术干预即可。由于备份后对备份数据进行一致性检查占用的系统资源较大,建议对现有的带库备份服务器进行内存升级,由目前的1G内存升级到4G内存即可。 而对备份后的数据进行有效性检验,只需要将备份的数据恢复到验证服务器上,恢复后的数据能正常访问就能证明备份数据有效。而这些有效的数据之前是已经进行过一致性检验

DataGridView实现数据的快速输入

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;

C#用DataGridview 做的表格效果

C#用DataGridview 做的表格效果 private void Form1_Load(object sender, EventArgs e) { DataGridViewComboBoxColumn boxc = new DataGridViewComboBoxColumn();//创建下拉框 boxc.HeaderText = "国家";//设定标题头 boxc.Items.Add("China");//设定下拉框内容 boxc.Items.Add("England"); boxc.Items.Add("U.S.A"); boxc.Items.Add("Japan"); this.dataGridView1.Columns.Add(boxc);//将下拉框添加到datagridview中 DataGridViewTextBoxColumn textc = new DataGridViewTextBoxColumn();//创建文本框字段 textc.HeaderText = "公司"; this.dataGridView1.Columns.Add(textc); textc = new DataGridViewTextBoxColumn(); textc.HeaderText = "描述"; this.dataGridView1.Columns.Add(textc); DataGridViewButtonColumn butc = new DataGridViewButtonColumn();//创建按钮字段 butc.HeaderText = "设置"; butc.Text = "设置"; butc.DefaultCellStyle.ForeColor = Color.Black; butc.DefaultCellStyle.BackColor = Color.FromKnownColor(KnownColor.ButtonFace); butc.AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; butc.Width = 150; https://www.doczj.com/doc/045675932.html,eColumnTextForButtonValue = true;//如果为false,则不显示button上的text this.dataGridView1.Columns.Add(butc); butc = new DataGridViewButtonColumn(); butc.HeaderText = "删除"; butc.Text = "删除"; butc.DefaultCellStyle.ForeColor = Color.Black; butc.DefaultCellStyle.BackColor = Color.FromKnownColor(KnownColor.ButtonFace); butc.AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; butc.Width = 150;

NET新手指南:轻松自定义DataGridView控件

.NET新手指南:轻松自定义DataGridView控件 .NET DataGridView是一个便于使用的数据绑定控件。本文为.NET新手介绍了如何使用.NET配置向导VB Express自定义DataGridView控件。只需非常简单的修改以及一两行代码,便可以轻松实现交替颜色行,自定义排序功能以及显示编辑行。这样一个既可以浏览数据又可以编辑数据的窗体非常实用。 本文的目标读者是.NET新手。首先讲述如何创建一个新连接,然后讲述如何自定义结果控件,使用Visual Basic Express(VB Express)配置向导,本文将描述如何填充DataGridView控件,然后按照以下步骤进行提高: 1、行的显示颜色交替,构成一个绿色条效果; 2、禁用掉DataGridView内置的单列排序功能; 3、执行这个窗体时显示编辑行。 开始 VB Express提供了许多方法检索和操作外部数据,例如,只需要运行VB Express的配置向导就可以建立一个到MS Access 示例数据库Northwind.mdb中Customers的连接: 1、启动VB Express,然后在标准工具栏上点击新建项目按钮,在弹出的对话框中选择Windows Form Application; 2、在名称控件处输入一个有意义的名字,点击确定按钮; 3、点击解决方案资源管理器右下角的数据源标签,如果没有看到这个标签,从“数据”菜单中选择显示数据源即可; 4、点击新建数据源按钮,启动新建数据源配置向导; 5、点击下一步,数据库选项保持默认设置; 6、在下一个面板中点击新建连接; 7、在弹出的新建连接对话框中,点击修改,从弹出的修改数据源对话框中选择Access数据库文件,然后点击确定按钮; 8、在新建连接对话框中点击浏览,找到Northwind.mdb的位置(在Office目录的Samples文件夹下),然后点击确定按钮; 9、点击测试连接,然后点击确定按钮清除确认消息; 10、如果连接工作正常,点击确定返回向导窗口,然后点击下一步继续;

国家重点监控企业污染源自动监测数据有效性审核办法

国家重点监控企业污染源自动监测数据有效性审核办法 2009-05-11 第一章总则 第一条为了加强对国家重点监控企业(以下简称国控企业)污染源自动监测数据的使用和管理,规范环境监测管理部门对污染源自动监测数据的有效性审核工作,根据《中华人民共和国大气污染防治法》、《中华人民共和国水污染防治法》、《排污费征收使用管理条例》、《主要污染物总量减排监测办法》和《污染源自动监控管理办法》等有关规定,制定本办法。 第二条本办法所称的国控企业污染源自动监测数据是指通过国控企业安装的污染源自动监控设施获取的监测数据。 国控企业名单,由国务院环境保护主管部门定期公布。 第三条国控企业污染源自动监测数据有效性必须同时符合以下条件: (一)安装的自动监控设施经环境保护主管部门验收合格; (二)自动监控设施的运行经环境保护主管部门定期考核合格。 第四条验收合格、日常运行定期考核合格的污染源自动监控设施获取的自动监测数据,认定为通过有效性审核的污染源自动监测数据。 第五条通过有效性审核的污染源自动监测数据,是环境保护主管部门进行排污申报核定、排污许可证发放、排放总量核算、环境统计、排污费征收和环境执法等环境管理行为的依据。 第六条国控企业污染源自动监测数据有效性审核工作由市(地)级环境保护主管部门(以下简称市级责任环保部门)负责。 其中装机容量30万千瓦以上火电厂(包括热电联产电厂)的污染源自动监测数据有效性审核工作由省级环境保护主管部门(以下简称省级责任环保部门)负责。 第二章责任 第七条国控企业对污染源自动监测数据的准确性负责。

第八条国控企业安装污染源自动监控设施应当严格执行《水污染源在线监测系统安装技术规范(试行)HJ/T353-2007》、《固定污染源烟气排放连续监测技术规范(试行)HJ/T75-2007》和《污染源监控现场端建设规范》。 第九条国控企业的污染源自动监控设施必须与责任环保部门的污染源监控机构(指环保部门的监控中心、应急指挥中心或设在环境监察、环境监测或环境信息机构的监控平台等)联网。 第十条国控企业应当依据《水污染源在线监测系统运行与考核技术规范(试行)HJ/T 355-2007》和《固定污染源烟气排放连续监测技术规范(试行)HJ/T75-2007》要求,对污染源自动监控设施进行运行管理,建立健全相关制度和台帐信息,储存足够的备品备件。 第十一条国控企业按照有关技术规范要求对污染源自动监控设施进行巡检、维护保养、定期校准和校验,对异常和缺失数据进行标识和补充。 不论何种原因导致的污染源自动监测数据缺失,国控企业均应在8小时内报告责任环保部门。 在系统不能正常运行期间,国控企业要采取人工采样监测的方式向责任环保部门污染源监控机构报送数据,数据报送每天不少于4次,间隔不得超过6小时。进行人工监测的检测机构需具有相应的监测资质。 第十二条国控企业应当配合责任环保部门开展对污染源自动监测数据的有效性审核工作。 第十三条国控企业污染源自动监控设施由责任环保部门组织验收,国务院环境保护主管部门进行监督检查。 国控企业污染源自动监控设施已通过地市级以上环保部门验收的,经省级环保部门认定,报国务院环境保护主管部门备案。 第十四条责任环保部门对污染源自动监控设施验收时应当严格执行《国家重点监控企业污染源自动监控设施验收规程》。 第十五条责任环保部门依据《国家重点监控企业污染源自动监控设施考核规程》,对国控企业污染源自动监控设施进行考核。 第十六条责任环保部门的污染源监控机构在自动监测数据有效性审核中承担以下职责:

dataGridView的用法

dataGridView的几个基本操作: 1、获得某个(指定的)单元格的值: dataGridView1.Row[i].Cells[j].Value; 2、获得选中的总行数: dataGridView1.SelectedRows.Count; 3、获得当前选中行的索引: dataGridView1.CurrentRow.Index; 4、获得当前选中单元格的值: dataGridView1.CurrentCell.Value; 5、取选中行的数据 string[] str = new string[dataGridView.Rows.Count]; for(int i;i

c# winform 关于datagridview一些操作

设置字段名 设置字段值 设定单元格表示 Error图标 设定当前单元格 取得当前单元格内容 取得当前单元格的列 Index 取得当前单元格的行 Index 向下一行 向上一行 取消 DataGridView1 为只读 设置 DataGridView1 为只读 设置 DataGridView1 的第2列整列单元格为只读并变色设置 DataGridView1 的第3行整行单元格为只读并变色设置 DataGridView1 的[0,0]单元格为只读并变色 设置 DataGridView1 的第2列整列单元格为只读并变色设置 DataGridView1 的第3行整行单元格为只读并变色设置 DataGridView1 的[0,0]单元格为只读并变色 设置用户不能手动给 DataGridView1 添加新行 设置用户可以手动给 DataGridView1 添加新行 禁止DataGridView1的行删除操作。 允许DataGridView1的行删除操作。 DataGridView1的第一列隐藏 DataGridView1的第一行隐藏 DataGridView1的第一列显示 DataGridView1的第一行显示 列头隐藏 行头隐藏 列头显示 行头显示 删除名为"Column1"的列 删除第四列 删除第三行 禁止用户改变DataGridView1的所有列的列宽 禁止用户改变DataGridView1的所有行的行高 允许用户改变DataGridView1的所有列的列宽 允许用户改变DataGridView1的所有行的行高 禁止用户改变DataGridView1的第一列的列宽 禁止用户改变DataGridView1的第一列的行宽 第一列的最小列宽设定为 100 第一行的最小行高设定为 50 禁止用户改变列头的高度 禁止用户改变行头的宽度 设定包括Header和所有单元格的列宽自动调整 设定包括Header和所有单元格的行高自动调整

dataGridView属性及方法

Dat aGridView 类 请稍候 DataGridV iew成员 开启低带宽视图 全部折叠 此页面仅适用于 .NET Framework 3.0 同时提供下列产品的其他版本: ?Microsoft Visual Studio 2005/.NET Framework 2.0?Microsoft Visual Studio 2008/.NET Framework 3.5 DataGridView 成员 在可自定义的网格中显示数据。 下表列出了由DataGridView类型公开的成员。 公共构造函数 页首 公共属性 (请参见受保护的属性) AccessibilityObject AccessibleDefaultActionDescription AccessibleDescription AccessibleName AccessibleRole AdjustedTopLeftHeaderBorderStyle

AdvancedCellBorderStyle AdvancedColumnHeadersBorderStyle AdvancedRowHeadersBorderStyle AllowDrop AllowUserToAddRows AllowUserToDeleteRows AllowUserToOrderColumns AllowUserToResizeColumns AllowUserToResizeRows AlternatingRowsDefaultCellStyle Anchor AutoGenerateColumns AutoScrollOffset AutoSize AutoSizeColumnsMode AutoSizeRowsMode BackColor

DataGridViewComboBoxColumn的使用

using System; using System.Collections.Generic; using https://www.doczj.com/doc/045675932.html,ponentModel; using System.Data; using System.Data.SqlClient; using System.Drawing; using System.Text; using System.Windows.Forms; namespace Sys { publicpartialclass Form3:Form { public Form3() { InitializeComponent();

} privatevoid Form3_Load(object sender,EventArgse) { dataGridView1.AllowUserToAddRows=false; dataGridView1.AutoGenerateColumns=false; using(SqlConnectionsqlconn=new SqlConnection("server=.;uid=sa;pwd=sa;database=xx")) { string sql1=@"selectuserid,fullname,a.[description],b.ugroupid fromusersaleftouterjoinusergroupb ona.grade=b.ugroupid"; string sql2="selectdistinctugroupid,[description]fromusergroup"; DataGridViewComboBoxColumndgvComboBoxColumn=dataGridView1.Columns["grade"]as DataGridViewComboBoxColumn; dgvComboBoxColumn.DataPropertyName="ugroupid"; dgvComboBoxColumn.DataSource=GetTable(sql2).DefaultView;//必须在设置dataGridView1的DataSource的属性前设置dgvComboBoxColumn.DisplayMember="description"; dgvComboBoxColumn.ValueMember="ugroupid"; dataGridView1.DataSource=GetTable(sql1).DefaultView;//一定要在dgvComboBoxColumn的DataSource后设置 } } private DataTableGetTable(string sql) { using(SqlConnectionsqlconn=new SqlConnection("server=.;uid=sa;pwd=yuling1310;database=smls")) { DataTabledt=new DataTable(); SqlDataAdaptersqlda=new SqlDataAdapter(sql,sqlconn); sqlda.Fill(dt); return dt; } } } }

相关主题
文本预览
相关文档 最新文档