C#----DataGridView控件60招(一)
1. DataGridView当前的单元格属性取得、变更
2. DataGridView编辑属性
3. DataGridView最下面一列新追加行非表示
4. DataGridView判断当前选中行是否为新追加的行
5. DataGridView删除行可否设定
6. DataGridView行列不表示和删除
1.当前的单元格属性取得、变更
[C#]
'当前选中单元的值
Console.WriteLine(DataGridView1.CurrentCell.Value)
'当前列的Index值
Console.WriteLine(DataGridView1.CurrentCell.ColumnIndex)
'当前单元的行Index值
Console.WriteLine(DataGridView1.CurrentCell.RowIndex)
'将控件中(0, 0)处的值,赋给当前单元格.
DataGridView1.CurrentCell =DataGridView1[0, 0]
2.DataGridView编辑属性
全部单元格编辑属性
[C#]
'DataGridView1只读属性
DataGridView1.ReadOnly = True
指定行列单元格编辑属性
[C#]
DataGridView1.Columns[1]ReadOnly = True
DataGridView1.Rows[2].ReadOnly = True
DataGridView1[0, 0].ReadOnly = True
根据条件判断单元格的编辑属性
下例中column2的值是True的时候,Column1设为可编辑
[C#]
private void DataGridView1_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
{
if (this.DataGridView1.Columns[e.ColumnIndex].Name.ToString().Equals("Column2"))
{
if (DataGridView1["Column2", e.RowIndex].Value.ToString().ToLower().Equals("true"))
{
DataGridView1["Column1", e.RowIndex].ReadOnly = false;
}
else
{
DataGridView1["Column1", e.RowIndex].ReadOnly = true;
}
}
}
{
if (this.DataGridView1.Columns[e.ColumnIndex].Name.ToString().Equals("Column2"))
{
if (DataGridView1["Column2", e.RowIndex].Value.ToString().ToLower().Equals("true"))
{
DataGridView1["Column1", e.RowIndex].ReadOnly = false;
}
else
{
DataGridView1["Column1", e.RowIndex].ReadOnly = true;
}
}
}