VB.Net .Clear () или txtbox.Text = "" методы очистки текстового поля - PullRequest
11 голосов
/ 20 сентября 2010

Не далеко в программировании и только что присоединился к этому форуму могучей компании, так что это глупый вопрос, но как лучше очистить текстовые поля в VB.Net и в чем разница между этими двумя методами? Я также видел, как люди критиковали людей, использующих в своих формах прозрачные предметы, и я понимаю, почему, но в этом случае я только учусь.

txtbox1.Clear()

или

txtbox1.Text = ""

Любая помощь очень ценится.

Ответы [ 8 ]

19 голосов
/ 20 сентября 2010

Метод Clear определяется как

    public void Clear() { 
        Text = null;
    } 

Установщик свойства Text начинается с

        set { 
            if (value == null) { 
                value = "";
            } 

Я предполагаю, что это отвечает на ваш вопрос.

5 голосов
/ 20 сентября 2010

Два метода эквивалентны на 100%.

Я не уверен, почему Microsoft сочла необходимым включить этот дополнительный Clear метод, но, поскольку он есть, я рекомендую использовать его, поскольку он четко отражает его назначение.

4 голосов
/ 05 августа 2012

Добавьте этот код в модуль:

Public Sub ClearTextBoxes(frm As Form) 

    For Each Control In frm.Controls
        If TypeOf Control Is TextBox Then
            Control.Text = ""     'Clear all text
        End If       
    Next Control

End Sub

Добавьте этот код в окне формы для вызова подпрограммы Sub:

Private Sub Command1_Click()
    Call ClearTextBoxes(Me)
End Sub
2 голосов
/ 07 сентября 2013
Public Sub EmptyTxt(ByVal Frm As Form)
    Dim Ctl As Control
    For Each Ctl In Frm.Controls
        If TypeOf Ctl Is TextBox Then Ctl.Text = ""
        If TypeOf Ctl Is GroupBox Then
            Dim Ctl1 As Control
            For Each Ctl1 In Ctl.Controls
                If TypeOf Ctl1 Is TextBox Then
                    Ctl1.Text = ""
                End If
            Next
        End If
    Next
End Sub

добавить этот код в форму и вызвать эту функцию

EmptyTxt(Me)
1 голос
/ 27 января 2017

Если вы хотите очистить выделенный текст, то с помощью этого кода я сделаю сам;)

If e.KeyCode = Keys.Delete Then
    TextBox1.SelectedText = ""
End If

Вот и все

1 голос
/ 07 января 2014

Просто используйте: TextBox1.Clear() Это будет нормально работать.

1 голос
/ 20 сентября 2010

Clear () устанавливает свойство Text в ничто. Так txtbox1.Text = Ничто не делает так же, как ясно. Пустая строка (также доступная через String.Empty) не является пустой ссылкой, но, разумеется, не имеет значения.

0 голосов
/ 23 июня 2019

В частности, если вы хотите очистить текстовое поле в VB.NET или VB 6.0, напишите этот код:

TextBox1.Items.Clear()

Если вы используете VBA, используйте этот код:

TextBox1.Text = "" или TextBox1.Clear()

...