//窗体加载事件
//内容居中
dataGridView1.RowsDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
//列名居中
dataGridView1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
//第一列禁止修改
dataGridView1.Columns[].ReadOnly = true;
//单元格第一列第一行 背景色
dataGridView1.Rows[].Cells[].Style.BackColor = Color.FromArgb(((int)(((byte)()))), ((int)(((byte)()))), ((int)(((byte)()))));
去掉最左侧
RowHeadVisible属性设置为false
 
            //添加行
for (int i=;i<=;i++)
{
int index = this.dataGridView1.Rows.Add();
this.dataGridView1.Rows[index].Cells[].Value = i; }
////第一行第一列 添加数据
//dataGridView1.Rows[0].Cells[0].Value = "1";
//dataGridView1.Rows[1].Cells[0].Value = "2";
//dataGridView1.Rows[2].Cells[0].Value = "3";
//dataGridView1.Rows[3].Cells[0].Value = "4";
//dataGridView1.Rows[4].Cells[0].Value = "5";
 //循环读取DataGridView
foreach (DataGridViewRow row in this.dataGridView1.Rows)
{
object cell0 = row.Cells[].Value; //
object cell1 = row.Cells[].Value; //
object cell2 = row.Cells[].Value; //3
object cell3 = row.Cells[].Value; //4
object cell4 = row.Cells[].Value; //5
object cell5 = row.Cells[].Value; //
object cell6 = row.Cells[].Value; //
}

原来在dataGridView的编辑列中有个属性DataPropertyName,在这里设置字段名称即可显示,查询结果的字段,全部添加上列后,就不会自动产生列了 //【没有测试】

//窗体样式
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;// 居中
  this.WindowState = System.Windows.Forms.FormWindowState.Maximized; //窗体最大化
   /// <summary>
/// 显示行号
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void dataGridView1_RowStateChanged(object sender, DataGridViewRowStateChangedEventArgs e)
{
e.Row.HeaderCell.Value = string.Format("{0}", e.Row.Index + );
}
public void SetDataGrieViewStyle()
{
            this.dataGridView1.Dock = System.Windows.Forms.DockStyle.Fill;
        dataGridView1.AutoGenerateColumns = false;  //是否自动创建列
//dataGridView1.Columns[0].ReadOnly = true; //第一列禁止修改
this.dataGridView1.TopLeftHeaderCell.Value ="号"; //设置左上角标题
dataGridView1.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.DisableResizing; //禁止调整左侧列 this.dataGridView1.AllowUserToAddRows = false; //去除最后一个空白行
dataGridView1.ReadOnly = true;//只读属性
dataGridView1.AllowUserToResizeColumns = false; //禁止调整列宽
dataGridView1.AllowUserToResizeRows = false;//禁止调整行宽 this.dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;//选中整行不选中单元格
this.dataGridView1.MultiSelect = false;//不能选中多行,只能选中一行
}
/// <summary>
/// 添加自定义数据
/// </summary>
public void AddDataGridViewContent()
{
//添加列
this.dataGridView1.Columns.Add("", "");
this.dataGridView1.Columns.Add("", "");
this.dataGridView1.Columns.Add("", "");
//添加值
this.dataGridView1.Rows.Add("第一个字段值", "第二个字段值", "第三个字段值");
this.dataGridView1.Rows.Add("第一个字段值", "第二个字段值", "第三个字段值"); for (int i=;i<;i++)
{
this.dataGridView1.Rows.Add("第一个字段值", "第二个字段值", "第三个字段值");
this.dataGridView1.Rows.Add("第一个字段值", "第二个字段值", "第三个字段值");
}
        }
//设置某列颜色
var color = ColorTranslator.FromHtml("#51C83D");
//var font = new Font("", Convert.ToInt32("")); for (int i=;i<dataGridView1.Rows.Count;i++)
{
if (i % == )
{
//dataGridView1.SelectedCells[i].Style.Font = font;
dataGridView1.Rows[i].Cells[].Style.ForeColor = color;
//var ss = dataGridView1.Rows[i].Cells[0].Value; }
}

 

在编辑列中, HeaderText 姓名 是显示的字段

Data     DataPropertyName  姓名  -- 这是对应的数据库查询出数据的列

Design  (Name)  dgv姓名  - -这是 获取编辑框的内容

           //隐藏某列
dgv.Columns["产品ID"].Visible = false;
dgv.Columns["别名"].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;//设置某列 自动列宽             dgv.Columns["别名"].SortMode = DataGridViewColumnSortMode.Programmatic; //自定义排序    dgv.Sort(dgv.Columns[nColumnIndex], System.ComponentModel.ListSortDirection.Descending); //设置某列排序 设置显示格式 百分比显示

//dgv.Columns["A"].DefaultCellStyle.Format = "P"; //以百分号显示 "0\\%";

dgv.Columns["A"].DefaultCellStyle.Format = "0.00\\%"; //以百分号显示 "0\\%";

dataGridView 设置的更多相关文章

  1. 关于C# Winform DataGridView 设置DefaultCellStyle无效的原因与解决方案

    上周在开发Winform 项目中,我曾遇到一个看似简单,但一直都没有解决的问题,那就是:设置winform DataGridView控件的行DefaultCellStyle,但却没有任何变化,我也曾求 ...

  2. datagridview设置currentrow为指定的某一行[转]

    最近由于程序需要,需要实现指定的行为datagridview的currentrow ,当我设置 dataGridView1.Rows[i].Selected = true时,刷新后,界面显示是当前行被 ...

  3. DataGridView设置不自动显示数据库中未绑定的列

    项目中将从数据库查出来的数据绑定到DataGridView,但是不想显示所有的字段.此功能可以通过sql语句控制查出来的字段数目,但是DataGridView有属性可以控制不显示未绑定的数据,从UI层 ...

  4. c# datagridview 设置某行不可见解决办法

    [前提]datagridview与数据库绑定,需要单独设置某行或者某个单元格不可见. [问题分析]直接用this.dataGridCiew1.Rows[0].Visible = false;不可行,会 ...

  5. 关于C#的DataGridView设置了DataSource后Rows无值问题

    前言 今天写一个导出到Excel表的东西,以前也写过,之前导出都是将界面上的DataGridView中数据导出,没有任何问题,然而今天的导出场景是在界面是点击导出按钮,直接在数据库中查询符合条件的数据 ...

  6. C# datagridview设置标题为汉语

    正常情况下,在给datagridview绑定数据源之后,显示的是SQL语句中的栏位,如下 我们想让标题显示汉语,可以有一下两种方法 1.在SQL中设置列别名 SELECT TITLE AS '报警标题 ...

  7. DataGridView设置列标题不换行

    dgv.ColumnHeadersDefaultCellStyle.WrapMode = DataGridViewTriState.False;  //设置列标题不换行 // 设定包括Header和所 ...

  8. C#winform的datagridview设置选中行

    this.dataGridView1.CurrentCell = this.dataGridView1[colIndex, rowIndex];this.dataGridView1.BindingCo ...

  9. DataGridView 设置某个列为只能为数字

    public DataGridViewTextBoxEditingControl CellEdit = null; int idx = 1; private void dataGridView1_Ed ...

随机推荐

  1. JSON中getInt()和optInt()的区别

    最近在用org.json这个包解析json的时候,发现谷歌提供两种不同的数据类型获取方法,比如说针对Int类型,提供了getInt()和optInt()两种方式,谷歌文档中的说明如下: 那么这两者有什 ...

  2. [bzoj1040][ZJOI2008]骑士_树形dp_基环树_并查集

    骑士 bzoj-1040 ZJOI-2008 题目大意:n个骑士,每个骑士有权值val和一个讨厌的骑士.如果一个骑士讨厌另一个骑士那么他们将不会一起出战.问出战的骑士最大atk是多少. 注释:$1\l ...

  3. 在CentOS VPS上源代码安装高版本号git

    背景:个别软件在国内下载非常慢,在vps下载就非常快. 可是下载好后的文件通过scp弄出来的时候又非常慢,所以想通过在vps里安装git,通过gitlab或oschina来进行中转.但遗憾的是,上传到 ...

  4. 多个结果显示成一个group_concat函数

    需求:获取班级.课程中文名.老师 扩展:一个班级一门课程,老师可能多个,想把多个教师显示成在一个结果里 解决方案:加个group by 参考资料:https://www.cnblogs.com/zhu ...

  5. 从头认识java-15.7 Map(3)-介绍HashMap的工作原理-get方法

    接着上一章节.我们来讨论一下get方法. 1.还是利用上一章节的图 下图引用自:http://www.admin10000.com/document/3322.html 我们简单说一下步骤.就是通过h ...

  6. javaweb项目中获取项目名称

    request.getServletContext().getContextPath() 增加项目名称是test.那么上面的结果就是/test

  7. C语言/C++中如何产生随机数

    C语言/C++中如何产生随机数 作者: 字体:[增加 减小] 类型:转载 时间:2013-10-14我要评论 这里要用到的是rand()函数, srand()函数,和time()函数.需要说明的是,i ...

  8. iOS网络开发工具集----字符串操作和时间操作

    一.字符串的操作方法 #pragma mark - 创建字符串 - (void)CreatString { // <1> 创建字符串 NSString *strS = @"Thi ...

  9. c++调用DOS命令,不显示黑屏

    WinExec("Cmd.exe /C md c://12", SW_HIDE); 注释:/c是什么意思,不用/C会报错 CMD [/A | /U] [/Q] [/D] [/E:O ...

  10. PCB拼板之单一矩形排样算法

    算法实现相关内容整理如下: 一.排样变量与关系 此算法,基于固定4边的尺寸遍历每个单只板的长宽得到最优解. 二.条件约束 基本约束条件(参考上图变量) 三.排样图形相同类型规律 由于计算量大,为了有效 ...