C#中DataGridView操作

DataGridView官方介绍

1.DataGridView增加数据

// 先清理,防止数据脏乱
skinDataGridView1.Rows.Clear();
// 获取最新行的索引
int index = skinDataGridView1.Rows.Add();
// 添加数据
skinDataGridView1.Rows[index].Cells[0].Value = "第index行第一列";
skinDataGridView1.Rows[index].Cells[1].Value = "第index行第二列";
......

1.1 第二种写法:

/// <summary>
///  类型选择下拉框添加数据
/// </summary>
private void setValueComboBox()
{
    ArrayList list = new ArrayList();
    list.Add(new DictionaryEntry("全部", "0"));
    foreach (var item in SysContent.videoMonitorTypeList)
    {
        list.Add(new DictionaryEntry(item.Value, item.Key));
    }
    skinComboBox1.DataSource = list;
    this.skinComboBox1.SelectedIndex = 0;
}

1.2 绑定数据源方法

DataTable dtData = new DataTable();
dtData.Columns.Add("ID");
dtData.Columns.Add("Name");
dtData.Columns.Add("Sex");
DataRow drData;
drData = dtData.NewRow();
drData[0] = 1;
drData[1] = "张三";
drData[2] = "1";
dtData.Rows.Add(drData);
drData = dtData.NewRow();
drData[0] = 2;
drData[1] = "李四";
drData[2] = "1";
dtData.Rows.Add(drData);
drData = dtData.NewRow();
drData[0] = 3;
drData[1] = "王五";
drData[2] = "1";
dtData.Rows.Add(drData);
drData = dtData.NewRow();
drData[0] = 4;
drData[1] = "小芳";
drData[2] = "0";
dtData.Rows.Add(drData);
drData = dtData.NewRow();
drData[0] = 5;
drData[1] = "小娟";
drData[2] = "0";
dtData.Rows.Add(drData);
drData = dtData.NewRow();
drData[0] = 6;
drData[1] = "赵六";
drData[2] = "1";
dtData.Rows.Add(drData);
this.datagridview1.DataSource = dtData;

2.获取DataGridView某一单元格数据

// 获取第一行第一列单元格数据
string str = skinDataGridView1.Rows[0].Cells[0].Value.ToString();

3.查看是否有选中行

// 表示有选中行
if(skinDataGridView1.CurrentRow != null{}
// 获取当前选中行索引
int currentIndex = skinDataGridView1.CurrentRow.Index;

4.DataGridView中某列添加下拉框
在这里插入图片描述
第一步:如上图所示
第二步:添加数据

// Column4:就是刚才设置类型为Conbox的列名称
// 设置整个datagridview属性[Column4]下拉框的值
this.Column4.Items.Clear();
this.Column4.Items.Add("是");
this.Column4.Items.Add("否");

// 设置某行某列下拉框值(通常这个方法都是在遍历数据并赋值列表的时候使用)
/*DataGridViewCell acell = skinDataGridView1.Rows[行索引].Cells[列索引];
DataGridViewComboBoxCell acombbox = acell as DataGridViewComboBoxCell;
acombbox.Items.Add("是");
acombbox.Items.Add("否");*/

// 设置下拉框默认值
((DataGridViewComboBoxCell)skinDataGridView1.Rows[行索引].Cells[列索引]).Style.NullValue = (item.fDefault == 1)?"是":"否";

第三步:结果展示
在这里插入图片描述

5.某列禁止用户编辑

// 设置第4列禁止编辑
skinDataGridView1.Columns[3].ReadOnly = true;

//修改指定列名的颜色
 DataGridView1.EnableHeadersVisualStyles = false;//需要
 DataGridView1.Columns[0].HeaderCell.Style.BackColor = Color.Blue;
 //DataGridView1.Columns[i] i写你想要的列号就可以了

//修改指定列的颜色
 DataGridView1.Columns[0].DefaultCellStyle.BackColor = Color.LightGreen;//列间隔变色
 //DataGridView1.Columns[i] i写你想要的列号就可以了

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
{
if(dataGridView1.Rows[i].Selected == true)
{
str[i] = dataGridView1.Rows[i].Cells[1].Value.ToString();
}
}
6、获取选中行的某个数据
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列内容
  • 5
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哎呦喂O_o嗨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值