Поделиться через


DataGridView.BeginEdit(Boolean) Метод

Определение

Переводит текущую ячейку в режим редактирования.

public:
 virtual bool BeginEdit(bool selectAll);
public virtual bool BeginEdit (bool selectAll);
abstract member BeginEdit : bool -> bool
override this.BeginEdit : bool -> bool
Public Overridable Function BeginEdit (selectAll As Boolean) As Boolean

Параметры

selectAll
Boolean

Значение true, чтобы выбрать все содержимое ячейки; значение false, чтобы не выбирать никакое содержимое.

Возвращаемое значение

Значение true, если текущая ячейка уже находится в режиме редактирования; в противном случае — значение false.

Исключения

Для объекта CurrentCell не задана допустимая ячейка.

-или-

Этот метод был вызван в обработчике для события CellBeginEdit.

Тип, указанный свойством EditType ячейки, не является производным от типа Control.

-или-

Тип, указанный свойством EditType ячейки, не реализует интерфейс IDataGridViewEditingControl.

Произошел сбой инициализации редактирования значения ячейки, и нет обработчика для события DataError, или обработчик задал для свойства ThrowException значение true. Объект исключения обычно можно привести к типу FormatException.

Примеры

В следующем примере кода показано использование этого метода.

// Override OnMouseClick in a class derived from DataGridViewCell to 
// enter edit mode when the user clicks the cell. 
protected override void OnMouseClick(DataGridViewCellMouseEventArgs e)
{
    if (base.DataGridView != null)
    {
        Point point1 = base.DataGridView.CurrentCellAddress;
        if (point1.X == e.ColumnIndex &&
            point1.Y == e.RowIndex &&
            e.Button == MouseButtons.Left &&
            base.DataGridView.EditMode !=
            DataGridViewEditMode.EditProgrammatically)
        {
            base.DataGridView.BeginEdit(true);
        }
    }
}
' Override OnMouseClick in a class derived from DataGridViewCell to 
' enter edit mode when the user clicks the cell. 
Protected Overrides Sub OnMouseClick( _
    ByVal e As DataGridViewCellMouseEventArgs)

    If MyBase.DataGridView IsNot Nothing Then

        Dim point1 As Point = MyBase.DataGridView.CurrentCellAddress
        If point1.X = e.ColumnIndex And _
            point1.Y = e.RowIndex And _
            e.Button = MouseButtons.Left And _
            Not MyBase.DataGridView.EditMode = _
            DataGridViewEditMode.EditProgrammatically Then

            MyBase.DataGridView.BeginEdit(True)

        End If
    End If
End Sub

Комментарии

Этот метод возвращает значение false , если ячейка не может перейти в режим редактирования, что может произойти по ряду причин. Этот метод возвращает значение false , если текущая ячейка доступна только для чтения. Он также возвращает значение false , если свойство ячейки EditType имеет значение null (то есть ячейка не может размещать элемент управления редактирования), а тип ячейки IDataGridViewEditingCell не реализует интерфейс .

Если ячейка поддерживает редактирование, этот метод вызывает CellBeginEdit событие, которое может быть отменено, и возвращает, false если обработчик событий отменит изменение. Если изменение не отменено и в ячейке может размещаться элемент управления редактированием, этот метод инициализирует элемент управления и отображает его. Если инициализация завершается сбоем, этот метод возвращает false.

Если ячейка успешно переходит в режим редактирования IsCurrentCellInEditMode , свойство возвращает true.

Применяется к

См. также раздел