DataGridView冻结列或行、列顺序调整、操作行头列头标题的方法

一、冻结列

DataGridViewColumn.Frozen属性为true时,该列左侧的所有列被固定,横向滚动时固定列不随滚动条滚动而左右移动。这对于重要列固定很有用。

示例:通过程序固定左侧第二列

//固定第二列
this.dgv_PropDemo.Columns[1].Frozen = true;

通过设计界面固定列

选择编辑列

选择要冻结的列,将Frozen属性勾选

二、冻结行

DataGridViewRow.Frozen属性为true时,该行上面的所有行被固定,纵向滚动时固定行不随滚动条滚动而上下移动。(冻结行只能通过代码实现)

示例;固定第一行

//固定第一行
this.dgv_PropDemo.Rows[0].Frozen = true;

三、列顺序的调整

设定DataGridView的AllowUserToOrderColumns为True的时候,用户可以自由调整列的顺序。

当用户改变列的顺序的时候,其本身的Index不好改变,但是DisplayIndex改变了。也可以通过程序改变DisplayIndex来改变列的顺序。列顺序发生改变时会引发ColumnDisplayIndexChanged事件。

四、行头和列头

改变DataGridView的第一列列头内容:

this.dgv_PropDemo.Columns[0].HeaderCell.Value = "第一列";

改变DataGridView的第一行行头内容:

this.dgv_PropDemo.Rows[0].HeaderCell.Value = "第一行";

改变DataGridView的左上头部单元内容:

this.dgv_PropDemo.TopLeftHeaderCell.Value = "左上角";

运行效果:

另外,也可以通过HeaderText来改变列头的内容:

this.dgv_PropDemo.Columns[1].HeaderText = "第二列";

HeaderText和HeaderCell的区别:

HeaderText只能改变文本内容,HeaderCell除了可以改变内容以外,还可以改变样式,例如字体大小、颜色等。

到此这篇关于DataGridView冻结列或行、列顺序调整、操作行头列头标题的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • C#操作DataGridView设置单元格只读

    一.修改ReadOnly属性 1.设置整个DataGridView只读: DataGridView.ReadOnly=true; 此时用户的新增行和删除行操作也被屏蔽了. 2.设置DataGridView内某个单元格不可编辑,例如:设置第二行第一列的单元格不可编辑: this.dgv_PropDemo[0, 1].ReadOnly = true; 3.设置DataGridVIew的某列整列不可编辑,例如:设置第二列不可编辑: this.dgv_PropDemo.Columns[1].ReadOn

  • 详解DataGridView控件的数据绑定

    目录 一.非绑定模式 二.绑定模式 示例程序: 1.界面设计如下图: 2.代码实现如下: 使用DataGridView控件,可以显示和编辑来自多种不同类型的数据源的表格数据. 将数据绑定到DataGridView控件非常简单和直观,在大多数情况下,只需设置DataSource属性即可.在绑定到包含多个列表或表的数据源时,只需将DataMember属性设置为指定要绑定的列表或表的字符串即可. 一.非绑定模式 所谓的非绑定模式就是DataGridView控件显示的数据不是来自于绑定的数据源,而是可以

  • C#操作DataGridView获取或设置当前单元格的内容

    当前单元格指的是DataGridView焦点所在的单元格,它可以通过DataGridView对象的CurrentCell属性取得.如果当前单元格不存在的时候,返回null. 取得当前单元格的内容: object obj = this.dgv_PropDemo.CurrentCell.Value; 注:返回值是object类型的. 取得当前单元格的列Index: int columnIndex = this.dgv_PropDemo.CurrentCell.ColumnIndex; 取得当前单元格

  • DataGridView不显示最下面的新行、判断新增行、删除行操作

    一.DataGridView不显示下面的新行 通常DataGridView的最下面一行是用户新追加的行(行头显示*).如果不想让用户新追加行即不想显示该新行,可以将DataGridView对象的AllowUserToAddRows属性设置为False. 示例: this.dgv_PropDemo.AllowUserToAddRows = false; 但是,可以通过程序给DataGridView追加新行: this.dgv_Demo.Rows.Add(); 注:只有DataGridView是非绑

  • DataTable的AcceptChanges()和RejectChanges()方法介绍并实现DataGridView数据增、删、改

    一.DataTable.AcceptChanges()方法 提交自上次调用AcceptChanges()方法以来对该表进行的所有更改.调用AcceptChanges()时,任何扔处于编辑模式的DataRow对象将成功结束其编辑.DataRowState也会随之更改:所有状态为Added何Modified的行的状态都变为Unchanged;状态为Deleted的行则被移除. 在尝试使用DbDataAdapter.Update方法更新DataSet之后,通常会对DataTable调用AcceptCh

  • DataGridView自动设定列宽和行高

    设定行高和列宽自动调整 设定包括Header和所有单元格的列宽自动调整 //设置包括Header和所有单元格的列宽自动调整 this.dgv_PropDemo.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; 设定包括Header和所有单元格的行高自动调整 //设置包括Header和所有单元格的行高自动调整 this.dgv_PropDemo.AutoSizeRowsMode = DataGridViewAutoSiz

  • DataGridView控件常用属性介绍

    通常会设置的DataGridView的属性如下: AllowUserToAddRows - False 指示是否向用户显示用于添加行的选项,列标题下面的一行空行将消失.一般让其消失. AllowUserToDeleteRows - False 指示是否允许用户从DataGridView删除行.一般不允许. AllowUserToOrderColumns - False 指示是否启用手动列重新放置.一般不允许. AllowUserToResizeColumns - True 指示用户是否可以调整列

  • DataGridView冻结列或行、列顺序调整、操作行头列头标题的方法

    一.冻结列 DataGridViewColumn.Frozen属性为true时,该列左侧的所有列被固定,横向滚动时固定列不随滚动条滚动而左右移动.这对于重要列固定很有用. 示例:通过程序固定左侧第二列 //固定第二列 this.dgv_PropDemo.Columns[1].Frozen = true; 通过设计界面固定列 选择编辑列 选择要冻结的列,将Frozen属性勾选 二.冻结行 DataGridViewRow.Frozen属性为true时,该行上面的所有行被固定,纵向滚动时固定行不随滚动

  • Pandas.DataFrame重置列的行名实现(set_index)

    目录 set_index()的使用方法 基本用法 将指定的列保留为数据:参数drop 分配多索引 将索引更改为另一列(重置) 更改原始对象:参数inplace 读取csv文件等时指定索引 使用索引(行名)提取(选择)行和元素 pandas.DataFrame中的现有列分配给索引index(行名,行标签).为索引指定唯一的名称很方便,因为使用loc,at选择(提取)元素时很容易理解. 将描述以下内容. set_index()的使用方法 基本用法 将指定的列保留为数据:参数drop 分配多索引 将索

  • 删除DataTable重复列,只删除其中的一列重复行的解决方法

    vs2005针对datatable已经有封装好的去重复方法: 复制代码 代码如下: //去掉重复行 DataView dv = table.DefaultView; table = dv.ToTable(true, new string[] { "name", "code" }); 此时table 就只有name.code无重复的两行了,如果还需要id值则 table = dv.ToTable(true, new string[] { "id",

  • 使用Shell 脚本实现每隔100行插入一条记录且记录第一列包含行号其他列不变

    1.例子:每隔100行插入一条记录,并且此条记录的第一列包含行号,其他列与第一行相同 #!/bin/sh var="00001" # 变量 cat a.txt|awk 'NR==1'|while read line # 获取文件第一行 do #echo "$line" result=`echo "$line"|cut -f2-` # 默认以tab分割,获取第二列至最后一列 cat a.txt|awk 'NR%100==0{printf("

  • Pandas DataFrame数据的更改、插入新增的列和行的方法

    一.更改DataFrame的某些值 1.更改DataFrame中的数据,原理是将这部分数据提取出来,重新赋值为新的数据. 2.需要注意的是,数据更改直接针对DataFrame原数据更改,操作无法撤销,如果做出更改,需要对更改条件做确认或对数据进行备份. 代码: import pandas as pd df1 = pd.DataFrame([['Snow','M',22],['Tyrion','M',32],['Sansa','F',18],['Arya','F',14]], columns=['

  • vue中获取滚动table的可视页面宽度调整表头与列对齐(每列宽度不都相同)

    mounted() { // 在mounted中监听表格scroll事件 this.$refs.scrollTable.addEventListener( 'scroll',(event) => { this.adjustTable(event); }); }, ...... // target中的属性很多,可以通过控制台查看--clientWidth可以获取除滚动条外的可视区域宽度 adjustTable(event) { this.clientWidth = event.target.cli

  • 删除DataFrame中值全为NaN或者包含有NaN的列或行方法

    如果存在以下DataFrame 年龄 性别 手机号 0 2 男 NaN 1 3 女 NaN 2 4 NaN NaN 删除NaN所在的行: 删除表中全部为NaN的行 df.dropna(axis=0,how='all') 删除表中含有任何NaN的行 df.dropna(axis=0,how='any') #drop all rows that have any NaN values 删除NaN所在的列: 删除表中全部为NaN的行 df.dropna(axis=1,how='all') 删除表中含有

  • 解决Python spyder显示不全df列和行的问题

    python中有的df列比较长head的时候会出现省略号,现在数据分析常用的就是基于anaconda的notebook和sypder,在spyder下head的时候就会比较明显的遇到显示不全.这时候我们就需要用到pandas下的一个函数set_option 我们直接来看代码: 这是正常情况spyder下head()的样子 import numpy as np import pandas as pd df=pd.DataFrame(np.random.rand(2,10)) #创建一个2行10列的

  • 利用Pandas读取某列某行数据之loc和iloc用法总结

    目录 1.loc方法 2.iloc方法 补充:利用loc.iloc提取所有数据 总结 实际操作中我们经常需要寻找数据的某行或者某列,这里介绍我在使用Pandas时用到的两种方法:iloc和loc. loc:通过行.列的名称或标签来索引 iloc:通过行.列的索引位置来寻找数据 首先,我们先创建一个Dataframe,生成数据,用于下面的演示 import pandas as pd import numpy as np # 生成DataFrame data = pd.DataFrame(np.ar

  • asp DataTable添加列和行的三种方法

    复制代码 代码如下: #region 方法一: DataTable tblDatas = new DataTable("Datas"); DataColumn dc = null; dc = tblDatas.Columns.Add("ID", Type.GetType("System.Int32")); dc.AutoIncrement = true;//自动增加 dc.AutoIncrementSeed = 1;//起始为1 dc.AutoI

随机推荐