一、
当我们在窗体中使用表格时会发现,在编辑每一列的列标题后,第一例为空白,如图所示。
那如何把第一列的空白给去掉呢?
其实,第一列空白为每行的行标题,当我们不需要的时候,右击控件选择属性,找到RowHeadersVisible改为False即可。同样道理,第一行也是每一列的列标题,再不需要显示的时候找到属性中的CoulmnHeadersVisible改为False即可。
要想向表格中添加数据可以使用Colunms和Rows属性。
private void Form1_Load(object sender, EventArgs e)
{
string[] row1 = new string[] { "0001", "小吕", "男", "18890234567" };
string[] row2 = new string[] { "0002", "小张", "男", "18890232343" };
string[] row3 = new string[] { "0003", "小王", "女", "18890238798" };
string[] row4 = new string[] { "0004", "小朱", "男", "18890234566" };
object[] rows = new object[] { row1, row2, row3, row4 };
foreach (string[] i in rows)//使用foreach语句循环添加
{
dataGridView1.Rows.Add(i);//向控件中添加数据
}
}
运行后的效果:
此时会发现多处一行空白行,当鼠标点击空白单元格时发现可以手动添加数据,如果不想显示空白行,可以在控件的属性中找到AllowUserAddToRows改成False即可。
单击已经添加好的数据也可以进行编辑,那如果我们不想对已添加的数据进行编辑,只需要在属性中把ReadOnly改为True即可。
二、获得选中单元的值及其行列索引
string XY;//所选单元格的值
int rowIndex;//行索引
int colIndex;//列索引
private void dataGridView_CellEnter(object sender, DataGridViewCellEventArgs e)
{
//所选单元格的值
XY = dataGridcoordinates.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();=
//获取当前单元格的行号和列号
rowIndex = e.RowIndex;
colIndex = e.ColumnIndex;=
}
三、删除选中行
1.
删除选中格所在行
int i = dataGridcoordinates.SelectedCells[0].RowIndex;
dataGridcoordinates.Rows.RemoveAt(i);
2.只想删除选中单元格,本人未找到方法,用null来代替
用二结合下一行代码即可实现
dataGridcoordinates.Rows[rowIndex].Cells[colIndex].Value = null;
若想更改后台数据,可以将数据存入list,再根据list[rowIndex]直接更改替换的数据