Text Box Base. Clear Метод
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Удаляет весь текст из элемента управления «Текстовое поле».
public: void Clear();
public void Clear ();
member this.Clear : unit -> unit
Public Sub Clear ()
Примеры
В следующем примере кода используется TextBoxпроизводный класс для создания обработчика TextChanged события. Код в обработчике событий ограничивает данные числами. После ввода текста в элементе управления код определяет, является ли введенный текст числом. Если текст не является числом, код очищает текст из элемента управления и MessageBox отображается , чтобы предупредить пользователя о том, что принимаются только числа. В этом примере требуется, чтобы переменная Boolean с именем flag и элемент управления textBox1 были TextBox определены за пределами этого метода. В этом примере показано, как использовать переменную флага, чтобы избежать каскадного события в событии TextChanged .
private: bool flag; private: void MyTextChangedHandler( System::Object^ sender, System::EventArgs^ e ) < Int64 val; // Check the flag to prevent code re-entry. if ( flag == false ) < // Set the flag to True to prevent re-entry of the code below. flag = true; // Determine if the text of the control is a number. try < // Attempt to convert to long val = System::Convert::ToInt64( textBox1->Text ); > catch ( Exception^ ) < // Display a message box and clear the contents if not a number. MessageBox::Show( "The text is not a valid number. Please re-enter" ); // Clear the contents of the text box to allow re-entry. textBox1->Clear(); > // Reset the flag so other TextChanged events are processed correctly. flag = false; > >
private bool flag; private void MyTextChangedHandler(System.Object sender, System.EventArgs e) < long val; // Check the flag to prevent code re-entry. if(flag == false) < // Set the flag to True to prevent re-entry of the code below. flag = true; // Determine if the text of the control is a number. try < // Attempt to convert to long val = System.Convert.ToInt64(textBox1.Text); >catch < // Display a message box and clear the contents if not a number. MessageBox.Show("The text is not a valid number. Please re-enter"); // Clear the contents of the text box to allow re-entry. textBox1.Clear(); >// Reset the flag so other TextChanged events are processed correctly. flag = false; > >
Private flag As Boolean Private Sub MyTextChangedHandler(sender As System.Object, e As System.EventArgs) ' Check the flag to prevent code re-entry. If flag = False Then ' Set the flag to True to prevent re-entry of the code below. flag = True ' Determine if the text of the control is a number. If IsNumeric(textBox1.Text) = False Then ' Display a message box and clear the contents if not a number. MessageBox.Show("The text is not a valid number. Please re-enter") ' Clear the contents of the text box to allow re-entry. textBox1.Clear() End If ' Reset the flag so other TextChanged events are processed correctly. flag = False End If End Sub
Комментарии
Этот метод можно использовать для очистки содержимого элемента управления вместо назначения свойству Text пустой строки.
My world of C #
Задача: на форме есть n — колличество TextBox’ов, их нужно очистить все одновременно нажатием одной кнопки.
Делаем функцию:
void LoopVisualTree(DependencyObject obj)//обнуление текст боксов < for (int i = 0; i < VisualTreeHelper.GetChildrenCount(obj); i++) < if (obj is TextBox) < ((TextBox)obj).Text = null; > // РЕКУРСИЯ LoopVisualTree(VisualTreeHelper.GetChild(obj, i)); > >
Потом нажимаем на кнопку на форме 2 раза, чтобы перейти в её обработчик и прописываем там(пример. ):
private void button10_Click(object sender, RoutedEventArgs e) < LoopVisualTree(this); >
Как очистить textbox в c по нажатию кнопки
Для ввода и редактирования текста предназначены текстовые поля — элемент TextBox. Так же как и у элемента Label текст элемента TextBox можно установить или получить с помощью свойства Text.
По умолчанию при переносе элемента с панели инструментов создается однострочное текстовое поле. Для отображения больших объемов информации в текстовом поле нужно использовать его свойства Multiline и ScrollBars . При установке для свойства Multiline значения true, все избыточные символы, которые выходят за границы поля, будут переноситься на новую строку.
Кроме того, можно сделать прокрутку текстового поля, установив для его свойства ScrollBars одно из значений:

- None : без прокруток (по умолчанию)
- Horizontal : создает горизонтальную прокрутку при длине строки, превышающей ширину текстового поля
- Vertical : создает вертикальную прокрутку, если строки не помещаются в текстовом поле
- Both : создает вертикальную и горизонтальную прокрутку
Автозаполнение текстового поля
Элемент TextBox обладает достаточными возможностями для создания автозаполняемого поля. Для этого нам надо привязать свойство AutoCompleteCustomSource элемента TextBox к некоторой коллекции, из которой берутся данные для заполнения поля.
Итак, добавим на форму текстовое поле и пропишем в код события загрузки следующие строки:
public partial class Form1 : Form < public Form1() < InitializeComponent(); AutoCompleteStringCollection source = new AutoCompleteStringCollection() < "Кузнецов", "Иванов", "Петров", "Кустов" >; textBox1.AutoCompleteCustomSource = source; textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend; textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource; > >

Режим автодополнения, представленный свойством AutoCompleteMode , имеет несколько возможных значений:
- None : отсутствие автодополнения
- Suggest : предлагает варианты для ввода, но не дополняет
- Append : дополняет введенное значение до строки из списка, но не предлагает варианты для выбора
- SuggestAppend : одновременно и предлагает варианты для автодополнения, и дополняет введенное пользователем значение
Перенос по словам
Чтобы текст в элементе TextBox переносился по словам, надо установить свойство WordWrap равным true . То есть если одно слово не умещается на строке, то но переносится на следующую. Данное свойство будет работать только для многострочных текстовых полей.
Ввод пароля
Также данный элемент имеет свойства, которые позволяют сделать из него поле для ввода пароля. Так, для этого надо использовать PasswordChar и UseSystemPasswordChar .
Свойство PasswordChar по умолчанию не имеет значение, если мы установим в качестве него какой-нибудь символ, то этот символ будут отображаться при вводе любых символов в текстовое поле.
Свойство UseSystemPasswordChar имеет похожее действие. Если мы установим его значение в true , то вместо введенных символов в текстовом поле будет отображаться знак пароля, принятый в системе, например, точка.
Событие TextChanged
Из всех событий элемента TextBox следует отметить событие TextChanged , которое срабатывает при изменении текста в элементе. Например, поместим на форму кроме текстового поля метку и сделаем так, чтобы при изменении текста в текстовом поле также менялся текст на метке:
public partial class Form1 : Form < public Form1() < InitializeComponent(); textBox1.TextChanged += textBox1_TextChanged; >private void textBox1_TextChanged(object sender, EventArgs e) < label1.Text = textBox1.Text; >>
Как очистить textbox в c по нажатию кнопки
Argument ‘Topic id’ is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
| ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |