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


Практическое руководство. Управление положением курсора в элементе управления TextBox в Windows Forms

Обновлен: Ноябрь 2007

Когда элемент управления Windows Forms TextBox впервые получает фокус, по умолчанию курсор устанавливается слева от текста, если он содержится в текстовом поле. Пользователь может изменять положение курсора с помощью клавиатуры или мыши. Если элемент управления теряет фокус и затем получает его снова, курсор будет установлен в том положении, куда пользователь последний раз поместил его.

Такой режим не всегда удобен для пользователя. Например, в текстовом редакторе пользователь может ожидать появления новых знаков после имеющегося текста. В приложении ввода данных может ожидаться замена существующих записей новыми знаками. Свойства SelectionStart и SelectionLength позволяют изменять положение курсора в соответствии с конкретными требованиями.

Чтобы управлять положением курсора в элементе управления TextBox

  1. Присвойте соответствующее значение свойству SelectionStart. Нуль означает, что курсор помещается слева от первого знака.

  2. Присвойте свойству SelectionLength значение, равное длине текста, который требуется выделить (необязательное действие).

    Приведенный ниже код всегда возвращает курсор в нулевое положение. Обработчик событий TextBox1_Enter должен быть связан с элементом управления; дополнительные сведения см. в разделе Создание обработчиков событий в Windows Forms.

    Private Sub TextBox1_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.Enter
       TextBox1.SelectionStart = 0
       TextBox1.SelectionLength = 0
    End Sub
    
    private void textBox1_Enter(Object sender, System.EventArgs e) {
       textBox1.SelectionStart = 0;
       textBox1.SelectionLength = 0;
    }
    
    private void textBox1_Enter(Object sender, System.EventArgs e) 
    {
       textBox1.set_SelectionStart(0);
       textBox1.set_SelectionLength(0);
    }
    
    private:
       void textBox1_Enter(System::Object ^  sender,
          System::EventArgs ^  e)
       {
          textBox1->SelectionStart = 0;
          textBox1->SelectionLength = 0;
       }
    

Как сделать курсор видимым по умолчанию

Курсор TextBox является по умолчанию видимым в новой форме только если элемент управления TextBox является первым в порядке табуляции. В противном случае курсор будет отображаться только если передать элементу TextBox фокус с помощью мыши или клавиатуры.

Чтобы сделать курсор видимым по умолчанию в новой форме

  • Присвойте свойству TabIndex элемента управления TextBox значение 0.

См. также

Задачи

Практическое руководство. Создание текстового поля для ввода пароля с помощью элемента управления TextBox в Windows Forms

Практическое руководство. Создание текстового поля, доступного только для чтения (Windows Forms)

Практическое руководство. Добавление кавычек в строку (Windows Forms)

Практическое руководство. Выделение текста в элементе управления TextBox в Windows Forms

Практическое руководство. Многострочные элементы управления TextBox в Windows Forms

Ссылки

Общие сведения об элементе управления TextBox (Windows Forms)

TextBox

Другие ресурсы

Элемент управления TextBox (Windows Forms)