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列内容