C# 数据网格特定单元格可编辑
C# datagrid specific cell editable
我想启用特定单元格进行编辑。
我的 datagridview 是 readonly false。
然后在单元格上单击我得到我的 columnindex 并尝试做:
if (e.ColumnIndex == 7)
{
if (String.IsNullOrEmpty(Convert.ToString(dgv.Rows[e.RowIndex].Cells["id"].Value)))
{
dgv.Columns[e.ColumnIndex].ReadOnly = true;
}
else
{
dgv.Columns[e.ColumnIndex].ReadOnly = false;
dgv.BeginEdit(true);
dgv.Rows[rowindex].Cells[columnindex].Selected = true;
}
}
没有成功,我的手机保持禁用状态。
有人可以帮忙吗。
谢谢
我用这段代码解决了我的问题:
private void dgvLocataire_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
dgvLocataire.BeginEdit(false);
var ec = dgvLocataire.EditingControl as DataGridViewComboBoxEditingControl;
if (ec != null && ec.Width - e.X < SystemInformation.VerticalScrollBarWidth)
ec.DroppedDown = true;
if ((e.ColumnIndex != 5) && (e.ColumnIndex != 6) && (e.ColumnIndex != 7))
{
dgvLocataire.Columns[e.ColumnIndex].ReadOnly = true;
}
}
感谢您的帮助
我想启用特定单元格进行编辑。
我的 datagridview 是 readonly false。
然后在单元格上单击我得到我的 columnindex 并尝试做:
if (e.ColumnIndex == 7)
{
if (String.IsNullOrEmpty(Convert.ToString(dgv.Rows[e.RowIndex].Cells["id"].Value)))
{
dgv.Columns[e.ColumnIndex].ReadOnly = true;
}
else
{
dgv.Columns[e.ColumnIndex].ReadOnly = false;
dgv.BeginEdit(true);
dgv.Rows[rowindex].Cells[columnindex].Selected = true;
}
}
没有成功,我的手机保持禁用状态。 有人可以帮忙吗。 谢谢
我用这段代码解决了我的问题:
private void dgvLocataire_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
dgvLocataire.BeginEdit(false);
var ec = dgvLocataire.EditingControl as DataGridViewComboBoxEditingControl;
if (ec != null && ec.Width - e.X < SystemInformation.VerticalScrollBarWidth)
ec.DroppedDown = true;
if ((e.ColumnIndex != 5) && (e.ColumnIndex != 6) && (e.ColumnIndex != 7))
{
dgvLocataire.Columns[e.ColumnIndex].ReadOnly = true;
}
}
感谢您的帮助