在datagridview中我想只选择单元格的文本而不是整个单元格
如果我把
Datagridview.CurrentRow.Cells.[Datagridview.CurrentCell.ColumnIndex].Selected=true;
选择整个单元格
有没有办法只选择单元格的文本,如vb6
Datagridview.SelStart=0
Datagridview.SelLength=Len(Datagridview.Text)
感谢您的帮助
答案 0 :(得分:2)
BeginEdit将选择单元格中的所有内容,但您可以通过以下方式指定选择的开始和长度:
((TextBox)dgv.EditingControl).SelectionStart = 0;
((TextBox)dgv.EditingControl).SelectionLength = 3;
答案 1 :(得分:1)
您可以通过调用BeginEdit()
控件的DataGridView
方法来执行此操作。它将启动所选单元格的编辑模式。您还可以设置EditMode
控件的DataGridView
:
//set selected cell as you showed in your question
datagridview1.CurrentRow.Cells.[Datagridview.CurrentCell.ColumnIndex].Selected=true;
//call BeginEdit with true argument which will select all text within the cell
dataGridView1.BeginEdit(true);
//optionally set the EditMode before you call BeginEdit
dataGridView1.EditMode = DataGridViewEditMode.EditProgrammatically;
答案 2 :(得分:0)
以编程方式获取当前单元格:
string msg = String.Format("Row: {0}, Column: {1}",
dataGridView1.CurrentCell.RowIndex,
dataGridView1.CurrentCell.ColumnIndex);
MessageBox.Show(msg, "Current Cell");
答案 3 :(得分:0)
这项工作对我来说,在添加新行后我想编辑正在添加的行的第二列。 同时突出显示单元格的值。希望这有助于“
DataGridViewCell cellQty = dgvBundle.Rows[dgvBundle.Rows.Count - 1].Cells[1];
dgvBundle.CurrentCell = cellQty;
dgvBundle.CurrentRow.Cells[1].Selected = true;
dgvBundle.BeginEdit(true);