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


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

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

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

Управление точкой вставки в элементе управления TextBox

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

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

    Приведенный ниже код всегда возвращает точку вставки 0. Обработчик событий 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(System::Object ^  sender,  
          System::EventArgs ^  e)  
       {  
          textBox1->SelectionStart = 0;  
          textBox1->SelectionLength = 0;  
       }  
    

Сделать точку вставки видимой по умолчанию

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

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

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

См. также