如何在vb中清除表单上的变量?

时间:2014-01-03 20:43:03

标签: vb.net visual-studio-2012

我有一个小程序,在“加载”按钮上单击创建对象信息并填充文本字段。我还有一个清除按钮,可以重置表单上的所有内容。在表单加载时如果单击“加载”按钮而不首先从下拉列表中选择公司,则会出现“首先选择公司”的错误。

如果您选择一家公司并点击“加载”,一切都会完美无缺。如果你点击清除一切都清除了,但如果你然后点击“加载”,它会填充文本字段中的信息来自之前选择的公司,而不是显示“选择公司第一个错误”。

当有人点击清除按钮时,是否有任何建议可能有助于真正清除所有内容?

这是我的代码

  Public Sub btn_LoadScript_Click(sender As Object, e As EventArgs) Handles btn_LoadScript.Click
        'get vb script
        If cb_COID.SelectedItem = String.Empty Then
            lbl_FormMainUserMessage.Text = "Select a Company Code"
        Else

            Try
                Dim co As Object = M3System.GetEntity("MillCompany.Company", cb_COID.SelectedItem)
                Dim script As Object = co.Scripting.ItemByKey("PaycheckCalc")
                'Dim script = co.Scripting.ItemByKey("CCalcCode")

                Scintillatb_Script.Text = script.vbscript

            Catch ex As Exception
                lbl_FormMainUserMessage.Text = ex.Message
            End Try
        End If

    End Sub
 Private Sub btn_Reset_Click(sender As Object, e As EventArgs) Handles btn_Reset.Click
        'clear form
        For Each cb In Me.Controls.OfType(Of ComboBox)()
            cb.Text = String.Empty
            cb.SelectedItem = String.Empty
        Next cb
        For Each tb In Me.Controls.OfType(Of TextBox)()
            tb.Text = String.Empty
        Next tb
        For Each lb In Me.Controls.OfType(Of Label)()
            lb.Text = String.Empty
        Next lb
        Scintillatb_Script.Text = ""

    End Sub

2 个答案:

答案 0 :(得分:1)

尝试将下拉列表设置为选择索引-1。 添加到您的明确代码:

 YourDropdown.selectedindex = -1

答案 1 :(得分:0)

您如何清除下拉列表?似乎清除了下拉列表的文本,但不清除该下拉列表中选定的索引或所选项目。

这就是为什么在清除UI后第二次点击加载时,它仍会加载信息,而不是提及错误消息“选择公司第一个错误”