VB.Net .Clear()或txtbox.Text =“”文本框清除方法

时间:2010-09-20 18:01:34

标签: .net vb.net winforms textbox clear

编程并没有进入这个强大公司的论坛,所以这是一个愚蠢的问题,但是在VB.Net中清除文本框的最佳方法是什么,这两种方法有什么区别?我也看到人们批评民众在表格上使用清晰的物体,我可以看到原因,但在这种情况下,我只是在学习。

txtbox1.Clear()

txtbox1.Text = ""

非常感谢任何帮助。

8 个答案:

答案 0 :(得分:19)

Clear方法定义为

    public void Clear() { 
        Text = null;
    } 

Text属性的setter以

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

我认为这可以回答你的问题。

答案 1 :(得分:4)

这两种方法是100%等效的。

我不确定Microsoft为什么觉得需要包含这个额外的Clear方法,但由于它存在,我建议使用它,因为它明确表达了它的目的。

答案 2 :(得分:3)

在模块中添加此代码:

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

在Form窗口中添加此代码以调用Sub例程:

Private Sub Command1_Click()
    Call ClearTextBoxes(Me)
End Sub

答案 3 :(得分:1)

Clear()将Text属性设置为nothing。所以txtbox1.Text =没有什么是明确的。空字符串(也可通过String.Empty提供)不是空引用,但当然没有值。

答案 4 :(得分:1)

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)

答案 5 :(得分:0)

只需使用:TextBox1.Clear()它会正常工作。

答案 6 :(得分:0)

如果你想选择文字清除然后使用这个代码,我将自己做;)

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

多数民众赞成

答案 7 :(得分:0)

特别是如果您想清除VB.NET或VB 6.0中的文本框,请编写以下代码:

TextBox1.Items.Clear()

如果您使用的是VBA,请使用以下代码:

TextBox1.Text = "" 要么 TextBox1.Clear()