DataGridView控件的各种操作总结
- 格式:docx
- 大小:25.84 KB
- 文档页数:14
DataGridView用法1.概述D a ta Gr id Vi ew是Wi n do ws Fo rm s中一种常用的控件,用于展示和编辑表格数据。
本文将介绍Da ta Gr id Vi ew的基本用法和常用功能。
2.基本用法2.1创建D a t a G r i d V i e w要使用D at aG ri dVi e w,首先需要在窗体上进行控件的创建和初始化。
可以通过拖拽控件到窗体上或者在代码中动态创建控件。
2.2数据绑定在D at aG ri dV ie w中展示数据通常需要进行数据绑定。
可以通过设置D a ta So ur ce属性来实现数据绑定,可以绑定Da ta Ta bl e、B i nd in gS ou rc e等数据源。
2.3列定义可以通过列定义来指定D at aG ri dV ie w中的列数、列名、列类型等属性。
可以使用Da ta Gr i dV ie w的Co lu mns集合来对列进行操作。
2.4行操作可以通过Da ta Gr idV i ew的R ow s集合对行进行操作,如添加、删除、插入等操作。
可以根据行索引或行对象进行操作。
3.常用功能3.1样式设置可以通过设置Da ta Gr i dV ie w的Ce ll Sty l e、C o lu mn He ad er De fau l tC el lS ty le、R ow H ea de rs De fa ul tCe l lS ty le等属性来设置样式,如背景色、字体、对齐方式等。
3.2单元格编辑D a ta Gr id Vi ew可以方便地对单元格进行编辑,可以根据需要设置单元格的可编辑性,只读属性等。
可以通过事件处理程序来实现特定单元格的编辑操作。
3.3排序和筛选D a ta Gr id Vi ew提供了对数据进行排序和筛选的功能。
可以通过设置A l lo wS or ti ng属性来启用排序功能,通过设置A l lo wU se rT oF il ter C ol um ns属性来启用筛选功能。
DataGridView在中的操作技巧目录1、取得或者修改当前单元格的内容2、设定单元格只读3、不显示最下面的新行4、判断新增行5、行的用户删除操作的自定义6行、列的隐藏和删除7、禁止列或者行的Resize8、列宽和行高以及列头的高度和行头的宽度的自动调整9、冻结列或行10、列顺序的调整11、行头列头的单元格12、剪切板的操作13、单元格的ToolTip的设置14、右键菜单(ContextMenuStrip的设置15、单元格的边框、网格线样式的设定16、单元格表示值的设定17、用户输入时,单元格输入值的设定18、设定新加行的默认值1、DataGridView取得或者修改当前单元格的内容当前单元格指的是DataGridView焦点所在的单元格,它可以通过DataGridView 对象的Curre ntCell属性取得。
如果当前单元格不存在的时候,返回Noth in g(C#是null[]'取得当前单元格内容MessageBox.Show(DataGridView1.Curre ntCell.Value'取得当前单元格的列In dexMessageBox.Show(DataGridView1.Curre ntCell.Colum nln dex'取得当前单元格的行In dexMessageBox.Show(DataGridView1.Curre ntCell.Rowl ndex另外,使用DataGridView.CurrentCellAddress属性(而不是直接访问单元格来确定单元格所在的行:DataGridView.CurrentCellAddress.Y 和列:DataGridView.Curre ntCellAddress.X。
这对于避免取消共享行的共享非常有用。
当前的单元格可以通过设定DataGridView对象的CurrentCell来改变。
可以通过CurrentCell来设定DataGridView的激活单元格。
中DataGridView控件中对于表格数据的显⽰经常使⽤到DataGridView控件,其以丰富多样的数据表呈现形式被程序猿喜爱。
本⼈在做⼀个⼩系统中运⽤DataGridView控件的部分属性,这些功能的使⽤在使⽤之初⽐較不易去理清,随着系统接近尾声,如今对⼀些运⽤进⾏整理回想。
控件的⾮常多属性都是相通的,整理回想,尽量让⾛的路在后⾯看起来不是更弯的。
⼀、怎样刷新对DataGridView⾥⾯的数据进⾏增删改查之后的内容详细实现:假设某操作没有查表,也就是在操作时。
不应该有数据,⽽原来的数据可能还停留在表中,这在界⾯上有可能会产⽣误解,这时。
能够加⼀句:DataGridView1.DataSource =Nothing。
在操作完毕之后。
若需显⽰时,再⼀次调⽤DataGridView1.DataSource = 数据源。
理论⾮常easy:採⽤⼜⼀次绑定数据。
也就是再⼀次查数据表。
(可能你已经想到。
但会考虑到执⾏效率、速度的问题⼀直没有下⼿。
但是,我⾮常确定地告知,在没有对控制⾃⾝进⾏优化之前,这是唯⼀的办法)。
⼆、取消⾃⼰主动选择DataGridView1.CurrentCell = Nothing或 DataGridView1.ClearSelection() ’这是⼀个⽅法,⽆需參数,⽆需赋值,直接引⽤。
三、单击本⾏中的任⼀单元格,选中整⾏属性SelectionMode = FullRowSelect(选中整⾏)还有其它设置:CellSelect(选单元格[默认])。
FullColumnSelect(选中整列),RowHeaderSelect(选中⾏⾸)。
ColumnHeaderSelect(选中列⾸)。
四、设置表头DataGridView1.Columns(“数据表列名”).HeaderText = “表头列名” ’列名设置DataGridView1.Columns(“数据表列名”).Width = 数值 ’列宽度设置。
C#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<dataGridView1.Rows.Count;i++){if(dataGridView1.Rows[i].Selected == true){str[i] = dataGridView1.Rows[i].Cells[1].Value.ToString();}}7、获取选中⾏的某个数据int a = dataGridView1.SelectedRows.Index;dataGridView1.Rows[a].Cells[“你想要的某⼀列的索引,想要⼏就写⼏”].Value;获得某个(指定的)单元格的值: dataGridView1.Row[i].Cells[j].Value; Row[i] 应该是Rows[i]int a=dataGridView1.CurrentRow.Index;string str=dataGridView1.Row[a].Cells[“strName”].Value.Tostring();selectedRows[0]当前选中的⾏.cell[列索引].values 就是当前选中⾏的某个单元格的值DataGridView1.SelectedCells(0).Value.ToString 取当前选择单元内容DataGridView1.Rows(e.RowIndex).Cells(2).Value.ToString 当前选择单元第N列内容————————————————版权声明:本⽂为CSDN博主「Mrchai521」的原创⽂章,遵循CC 4.0 BY-SA版权协议,转载请附上原⽂出处链接及本声明。
DATAGRIDVIEW属性及方法属性:1. AllowUserToAddRows:获取或设置一个值,指示是否允许用户添加新行。
2. AllowUserToDeleteRows:获取或设置一个值,指示是否允许用户删除行。
3. AllowUserToResizeColumns:获取或设置一个值,指示是否允许用户调整列的大小。
4. AllowUserToResizeRows:获取或设置一个值,指示是否允许用户调整行的大小。
5. AutoSizeColumnsMode:获取或设置值,指示列宽度的调整模式。
6. DataSource:获取或设置与该DataGridView关联的数据源。
7. RowHeadersVisible:获取或设置一个值,指示是否显示行标题。
8. ColumnHeadersVisible:获取或设置一个值,指示是否显示列标题。
9. ReadOnly:获取或设置一个值,指示是否只读。
10. MultiSelect:获取或设置一个值,指示是否可以同时选择多个单元格。
方法:1. ClearSelection(:取消选择所有选定的单元格。
2. Refresh(:重新绘制DataGridView控件。
3. Sort(DataGridViewColumn, ListSortDirection):按指定的列和排序顺序对表格进行排序。
4. SelectAll(:选择所有单元格。
5. Clear(:清除掉DataGridView控件中的所有数据。
7. ClearSelection(:清除当前选定的单元格的选择。
除了上述属性和方法外,DataGridView还有一些事件,可以让我们在特定的情况下作出响应。
例如,CellClick事件在单击单元格时触发,可以用来获取当前选中的单元格的值。
另外,DataGridView还有许多其他的属性和方法,用于设置和操作表格的样式、行高、列宽等。
总结起来,DataGridView是Windows Forms中非常常用的表格控件,具有丰富的属性和方法,用于设置和操作表格的外观和行为。
一、VB6简介Visual Basic 6.0(VB6)是微软公司于1998年推出的一款集成开发环境(IDE),是一种基于事件驱动的第三代事件驱动语言。
它允许开发者以快速、简单的方式创建Windows应用程序。
VB6具有可视化编程的特点,允许开发者以拖拽控件的方式构建界面,极大地提高了开发效率。
二、DataGridView控件概述DataGridView控件是VB6中用于显示和编辑数据的控件,它提供了功能强大的数据表格展示能力,可以实现类似Excel表格的功能。
它是VB6中用于数据展示的重要控件之一,具有灵活性高、界面友好等特点。
三、DataGridView控件的基本用法使用DataGridView控件展示数据一般需要以下步骤:1. 在VB6的工具箱中找到DataGridView控件,将其拖拽到窗体中。
2. 设置数据源:可以通过ADODB连接数据库,或者手动添加数据到DataGridView中。
3. 配置列:可以设置每一列的名称、宽度、颜色等属性。
4. 对DataGridView进行一些基本的样式调整,比如添加边框、更换背景颜色等。
四、DataGridView控件的高级用法除了基本的展示功能外,DataGridView控件还支持一些高级用法,比如:1. 数据编辑:可以在DataGridView中实现对数据的增删改操作,通过单元格的编辑功能实现数据的实时更新。
2. 数据筛选:可以根据条件对数据进行筛选,实现灵活的数据展示。
3. 数据导出:可以将DataGridView中的数据导出为Excel表格或者其他格式的文件。
4. 事件处理:可以通过DataGridView的事件来监听用户的操作,比如单元格的点击、双击等操作。
五、DataGridView控件的注意事项在使用DataGridView控件时需要注意一些问题,比如:1. 对数据源的操作需要小心,避免出现数据同步问题。
2. 对于大量数据的展示,需要注意性能优化,避免出现卡顿现象。
文章标题:深度解析WPF DataGridView的用法与应用在WPF(Windows Presentation Foundation)开发中,DataGridView是一个非常重要的控件,它能够展示和编辑数据,极大地方便了开发人员的工作。
在本文中,我将深入探讨WPF DataGridView的用法与应用,帮助您更全面、深刻地理解这个主题。
一、WPF DataGridView简介WPF DataGridView是一个灵活、强大的数据展示和编辑控件,它继承自DataGrid类,能够展示结构化数据,并支持数据的增删改查操作。
相比WinForms中的DataGridView,WPF的DataGridView具有更强大的样式定制和数据绑定能力,能够轻松地实现复杂的数据展示和交互功能。
二、WPF DataGridView基本用法在使用WPF DataGridView时,首先需要定义数据源,然后将数据源绑定到DataGridView上。
通过设置列的样式、编辑模式和排序等属性,可以实现对数据的灵活展示和编辑。
另外,通过事件处理和命令绑定,还可以实现对数据的响应式操作,为用户提供更好的交互体验。
三、WPF DataGridView高级用法除了基本的数据展示和编辑功能,WPF DataGridView还支持更多的高级用法,如自定义单元格样式、分组和聚合、多级表头、冻结列和行等功能。
通过这些高级用法,可以实现更复杂的数据展示和交互需求,提升用户体验和系统性能。
四、个人观点和理解就我个人而言,WPF DataGridView是我在WPF开发中使用频率最高的控件之一。
它不仅能够满足基本的数据展示和编辑需求,还能够通过样式定制和事件响应实现更复杂的功能。
我认为深入掌握WPF DataGridView的用法和应用,对于提高开发效率和系统质量都是非常重要的。
总结回顾通过本文的深度解析,相信您对WPF DataGridView的用法和应用已经有了更全面、深刻的理解。
DataGridView控件操作⼤全(内容居中显⽰,右键绑定菜单)DataGridView1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter '标题居中DataGridView1.RowsDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter '内容居中this.dataGridView1.AutoGenerateColumns = false; //让它不⾃⼰产⽣多余的列// this.dataGridView1.AutoSizeColumnsModel = Fill //列名占满容器this.dataGridView1.AutoSizeColumnsModel = AllCells //列名占满容器#region [DataGridView控件单元格点击事件,绑定右键菜单]private void dataGridView_Score_CellClick(object sender, DataGridViewCellEventArgs e){if (e.RowIndex > -1){//绑定右键菜单dataGridView_Score.SelectedRows[0].ContextMenuStrip = this.contextMenuStrip1;}}#endregionDataGridView单元格内容显⽰格式化:代⼊Dictionary<string,string>⽅法private void dataGridView_Score_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e){Dictionary<string,string> scoreStatus = GetScoreStatus();if (e.ColumnIndex == 7){e.Value = scoreStatus[e.Value.ToString()];e.FormattingApplied = true;}}#region [设定ComboBox数据源]private Dictionary<string, string> GetScoreStatus(){Dictionary<string, string> dic = new Dictionary<string, string>{{"2", "全部"},{"1", "成功"},{"0", "失败"}};return dic;}#endregion获取DataGridView选中数据, 返回对象:#region[获取DataGridView的选中⾏数据]/// <summary>/// 获取当前选中⾏的数据/// </summary>/// <returns>当前选中⾏数据</returns>private JudgeSetting GetSelectRowInfo(){DataGridViewRow selectRows = dataGridView_Judge.SelectedRows[0];JudgeSetting setting = new JudgeSetting();if (selectRows != null){// 项⽬代码setting.Ksxmdm = Convert.ToInt32(selectRows.Cells["项⽬代码"].Value);// 项⽬名称setting.Gakfmc = Convert.ToString(selectRows.Cells["项⽬名称"].Value);}return setting;}#endregion替换DataGridView头部显⽰,#region[替换DataTable头]/// <summary>/// 替换DataTable头/// </summary>/// <param name="dt">查询出的DataTable</param>/// <returns></returns>private DataTable ReplaceDataTableHead(DataTable dt){dt.Columns[0].ColumnName = "项⽬代码";dt.Columns[1].ColumnName = "项⽬名称";dt.Columns[2].ColumnName = "扣分项⽬";return dt;}#endregion#region[DataTable样式调整]/// <summary>/// DataTable样式调整/// </summary>private void ChangeDataTableStyle(){// KEY列隐藏this.dataGridView_Judge.Columns[10].Visible = false;this.dataGridView_Judge.Columns[9].Visible = false;//this.dataGridView_Judge.Columns[0].Width = 80;//this.dataGridView_Judge.Columns[1].Width = 100;this.dataGridView_Judge.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; }#endregion绑定dataTable到DataGridView#region[绑定dataTable到DataGridView]/// <summary>/// 绑定dataTable到DataGridView/// </summary>/// <param name="dt">源DataTable</param>private void BindDataTble(DataTable dt){if (toolStripComboBox1.Text != "全部"){DataRow[] rows = dt.Select(string.Format("GAKFMC = '{0}'", toolStripComboBox1.Text));DataTable table = dt.Clone();foreach(DataRow row in rows){table.Rows.Add(row.ItemArray);}dt = table;}// 修改DataTable头部dt = ReplaceDataTableHead(dt);// 绑定数据this.dataGridView_Judge.DataSource = dt;// 修改DataTable样式ChangeDataTableStyle();// 刷新读取的条数this.toolStripLabel4.Text = dt.Rows.Count.ToString();}#endregion刷新DataGridView的绑定#region[刷新DataGridView的绑定]/// <summary>/// 刷新DataGridView的绑定/// </summary>/// <param name="sqlEnum">查询语句</param>private void RefreshBindTable(SqlStatusEnum sqlEnum){try{DataTable dt = QueryData(sqlEnum, null);if (dt != null && dt.Rows.Count > 0){BindDataTble(dt);}elseMessageBox.Show("查询错误,或未查询到相关数据!");}catch (Exception ex){LogHelper.Error(ex);}}#endregionDataGridView控件绑定List<string> List<Student> strList = new List<Student>(){new Student(){StuId = 1, StuName = "张三"},new Student(){StuId = 2, StuName = "李四"},new Student(){StuId = 3, StuName = "王五"}};//查找出ID,并显⽰姓名,List<{m}>绑定到datagridview,可以把m去掉,.Select(m => new { m.StuName })这样展⽰就是StuName的列名 var students = strList.Where(s =>s.StuId == 2).Select(m => new { m = m.StuName }).ToList();dataGridView1.DataSource = students; //显⽰出以m为列名的数据,可以⼿动修改列名将dataGridView选定的⾏转换为实体对象ContactModel model = dataGridView1.CurrentRow.DataBoundItem as ContactModel;。
c# WinForm开发DataGridView控件的各种操作总结一、单元格内容的操作 (2)1.1.取得当前单元格内容 (2)1.2.DataGridView 设定单元格只读: (2)1.3.DataGridView 行头列头的单元格 (2)1.4.DataGridView 单元格的ToolTip的设置 (2)1.5.DataGridView 的单元格的边框、网格线样式的设定 (3)1.6.DataGridView 单元格表示值的自定义 (4)1.7.DataGridView 用户输入时,单元格输入值的设定 (4)二、行/列的操作 (5)2.1.DataGridView 不显示最下面的新行: (5)2.2.DataGridView 判断新增行: (5)2.3.DataGridView 行的用户删除操作的自定义: (5)2.4.DataGridView 行、列的隐藏和删除: (6)2.5.DataGridView 禁止列或者行的Resize: (6)2.6.DataGridView 列宽和行高自动调整的设定: (7)2.7.DataGridView 冻结列或行 (8)2.8.DataGridView 列顺序的调整 (8)2.9.DataGridView 新加行的默认值的设定 (8)三、针对datagridview全局属性的设置 (9)3.1.使用EditMode 属性 (9)3.2.根据条件设定单元格的不可编辑状态 (9)3.3.DataGridView 剪切板的操作 (9)3.4.DataGridView 的右键菜单(ContextMenuStrip) (10)3.5.CellContextMenuStripNeeded、RowContextMenuStripNeeded事件 (10)四、是用Virtual模式 (12)一、单元格内容的操作1.1.取得当前单元格内容Console.WriteLine(DataGridView1.CurrentCell.Value);// 取得当前单元格的列IndexConsole.WriteLine(DataGridView1.CurrentCell.ColumnIndex);// 取得当前单元格的行IndexConsole.WriteLine(DataGridView1.CurrentCell.RowIndex);另外,使用DataGridView.CurrentCellAddress 属性(而不是直接访问单元格)来确定单元格所在的行:DataGridView.CurrentCellAddress.Y 和列:*****.X 。
DataGridView控件⽤法(⼀)绑定数据⼀、DataGridView控件的⽤法(如何绑定、修改其中某⼀列值、添加序号列、交换任意2列显⽰顺序)1. DataGridView绑定数据源。
在页⾯上拖放⼀个DataGridView控件//连接数据库读取数据,为DataGridView赋值。
String strConn = "server= .\XWPC_DATABASE;uid=数据库⽤户名;pwd=数据库密码;database=数据库名";SqlConnection conn = new SqlConnection(strConn);String sqlId = "select * from [USER] ";conn.Open();SqlCommand cmd = new SqlCommand(sqlId, conn);SqlDataAdapter da = new SqlDataAdapter(cmd);DataSet ds = new DataSet();da.Fill(ds, "USER");DataGridView.DataSource = ds;DataGridView.DataMember = "USER";conn.Close();上述代码执⾏后页⾯上数据显⽰是这样的:2. 修改 DataGridView中数据的表头(本来默认是数据库中的字段名)。
//改变DataGridView的表头DataGridView.Columns[1].HeaderText = "⽤户名";//设置该列宽度DataGridView.Columns[1].Width = 70;3. 将DataGridView最前⾯⼀列编号改为从1开始依次增加的序号(默认的字段编号对⽤户没意义,⽽且不连续)。
//在表前⾯加⼀列表⽰序号DataGridView.Columns[0].HeaderText = "编号";DataGridView.Columns[0].Width = 60;//⾃动整理序列号int coun = DataGridView.RowCount;for (int i = 0; i < coun - 1; i++){DataGridView.Rows[i].Cells[0].Value = i + 1;DataGridView.Rows[i].Cells["USER_ID"].Value = i + 1;}//改变DataGridView的表头DataGridView.Columns[1].HeaderText = "⽤户名";//设置该列宽度DataGridView.Columns[1].Width = 70;DataGridView.Columns[2].HeaderText = "密码";DataGridView.Columns[2].Width = 70;//默认按顺序每列DataGridView依次从ds中对应赋值DataGridView.Columns[0].DataPropertyName = ds.Tables[0].Columns[0].ToString();执⾏后效果如下:4. 对调 DataGridView中某两列的顺序,代码如下: //改变DataGridView的表头DataGridView.Columns[1].HeaderText = "密码";//设置该列宽度DataGridView.Columns[1].Width = 70;DataGridView.Columns[1].DataPropertyName =ds.Tables[0].Columns[2].ToString();DataGridView.Columns[2].HeaderText = "⽤户名";DataGridView.Columns[2].Width =70;DataGridView.Columns[2].DataPropertyName = ds.Tables[0].Columns[1].ToString(); 执⾏效果:5. 设置DataGridView使某列不显⽰、使其不可直接编辑、使其不显⽰最后⼀⾏空⽩。
c# WinForm开发DataGridView控件的各种操作总结c# WinForm开发DataGridView控件的各种操作总结(单元格操作,属性设置)文章分类:.net编程c# WinForm开发DataGridView控件的各种操作总结(单元格操作,属性设置)2010-01-25 20:15一、单元格内容的操作*****// 取得当前单元格内容Console.WriteLine(DataGridView1.CurrentCell.Value);// 取得当前单元格的列 IndexConsole.WriteLine(DataGridView1.CurrentCell.ColumnIndex);// 取得当前单元格的行 IndexConsole.WriteLine(DataGridView1.CurrentCell.RowIndex);*******另外,使用 DataGridView.CurrentCellAddress 属性(而不是直接访问单定单元格所在的行:DataGridView.CurrentCellAddress.Y 和列: DataGridView.CurrentCellAddress 避免取消共享行的共享非常有用。
当前的单元格可以通过设定 DataGridView 对象的 CurrentCell 来改变。
可以通CurrentCell 来设定DataGridView 的激活单元格。
将 CurrentCell 设为 Nothing(null) 可以取消激// 设定 (0, 0) 为当前单元格DataGridView1.CurrentCell = DataGridView1[0, 0];在整行选中模式开启时,你也可以通过 CurrentCell 来设定选定行。
/// <summary>/// 向下遍历/// </summary>/// <param ></param>/// <param ></param>private void button4_Click(object sender, EventArgs e)...{int row = this.dataGridView1.CurrentRow.Index + 1;if (row > this.dataGridView1.RowCount - 1)row = 0;this.dataGridView1.CurrentCell = this.dataGridView1[0, row];}/// <summary>/// 向上遍历/// </summary>/// <param ></param>/// <param ></param>private void button5_Click(object sender, EventArgs e)...{int row = this.dataGridView1.CurrentRow.Index - 1;if (row < 0)row = this.dataGridView1.RowCount - 1;this.dataGridView1.CurrentCell = this.dataGridView1[0, row];}* 注意: this.dataGridView 的索引器的参数是: columnIndex, rowIndex 或是 columnName, rowIndex这与习惯不同。
********DataGridView 设定单元格只读:1)使用 ReadOnly 属性? 如果希望,DataGridView 内所有单元格都不可编辑,那么只要:// 设置 DataGridView1 为只读DataGridView1.ReadOnly = true;此时,用户的新增行操作和删除行操作也被屏蔽了。
******如果希望,DataGridView 内某个单元格不可编辑,那么只要:// 设置 DataGridView1 的第2列整列单元格为只读DataGridView1.Columns[1].ReadOnly = true;// 设置 DataGridView1 的第3行整行单元格为只读DataGridView1.Rows[2].ReadOnly = true;// 设置 DataGridView1 的[0,0]单元格为只读DataGridView1[0, 0].ReadOnly = true;*******DataGridView 行头列头的单元格// 改变DataGridView1的第一列列头内容DataGridView1.Columns[0].HeaderCell.Value = "第一列";// 改变DataGridView1的第一行行头内容DataGridView1.Rows[0].HeaderCell.Value = "第一行";// 改变DataGridView1的左上头部单元内容DataGridView1.TopLeftHeaderCell.Value = "左上";另外你也可以通过 HeaderText 来改变他们的内容。
// 改变DataGridView1的第一列列头内容DataGridView1.Columns[0].HeaderText = "第一列";*********** DataGridView 单元格的ToolTip的设置DataGridView.ShowCellToolTips = True 的情况下,单元格的 ToolTip 可以表示出来。
对于单元格窄小,无法完全显示的单元格, ToolTip 可以显示必要的信息。
1)设定单元格的ToolTip内容// 设定单元格的ToolTip内容DataGridView1[0, 0].ToolTipText = "该单元格的内容不能修改";// 设定列头的单元格的ToolTip内容DataGridView1.Columns[0].ToolTipText = "该列只能输入数字";// 设定行头的单元格的ToolTip内容DataGridView1.Rows[0].HeaderCell.ToolTipText = "该行单元格内容不能修改";2) CellToolTipTextNeeded 事件在批量的单元格的 ToolTip 设定的时候,一个一个指定那么设定的效率比较低,这时候可以利用 CellToolTipTextNeeded 事件。
当单元格的 ToolTipText 变化的时候也会引发该事件。
但是,当DataGridView的DataSource被指定且VirualMode=True的时候,该事件不会被引发。
// CellToolTipTextNeeded事件处理方法private void DataGridView1_CellToolTipTextNeeded(object sender,DataGridViewCellToolTipTextNeededEventArgs e){e.ToolTipText = e.ColumnIndex.ToString() + ", " + e.RowIndex.ToString();}*******DataGridView 的单元格的边框、网格线样式的设定1) DataGridView 的边框线样式的设定DataGridView 的边框线的样式是通过 DataGridView.BorderStyle 属性来设定的。
BorderStyle 属性设定值是一个BorderStyle 枚举: FixedSingle(单线,默认)、Fixed3D、None。
2) 单元格的边框线样式的设定单元格的边框线的样式是通过 DataGridView.CellBorderStyle 属性来设定的。
CellBorderStyle 属性设定值是DataGridViewCellBorderStyle 枚举。
(详细参见 MSDN)另外,通过 DataGridView.ColumnHeadersBorderStyle 和 RowHeadersBorderStyle 属性可以修改 DataGridView 的头部的单元格边框线样式。
属性设定值是DataGridViewHeaderBorderStyle 枚举。
(详细参见 MSDN)3)单元格的边框颜色的设定单元格的边框线的颜色可以通过 DataGridView.GridColor 属性来设定的。
默认是ControlDarkDark 。
但是只有在 CellBorderStyle 被设定为 Single、SingleHorizontal、SingleVertical 的条件下才能改变其边框线的颜色。
同样,ColumnHeadersBorderStyle 以及RowHeadersBorderStyle 只有在被设定为 Single 时,才能改变颜色。
4)单元格的上下左右的边框线式样的单独设定CellBorderStyle只能设定单元格全部边框线的式样。
要单独改变单元格某一边边框式样的话,需要用到DataGridView.AdvancedCellBorderStyle属性。
如示例:' 单元格的上边和左边线设为二重线' 单元格的下边和右边线设为单重线DataGridView1.AdvancedCellBorderStyle.Top = _DataGridViewAdvancedCellBorderStyle.InsetDoubleDataGridView1.AdvancedCellBorderStyle.Right = _DataGridViewAdvancedCellBorderStyle.InsetDataGridView1.AdvancedCellBorderStyle.Bottom = _DataGridViewAdvancedCellBorderStyle.InsetDataGridView1.AdvancedCellBorderStyle.Left = _DataGridViewAdvancedCellBorderStyle.InsetDouble同样,设定行头单元格的属性是: AdvancedRowHeadersBorderStyle,设定列头单元格属性是:AdvancedColumnHeadersBorderStyle。