0

嘿伙计们,我正在尝试通过添加外部类来清理我的表单文件,但我遇到了一个问题。这是说我没有返回一个值,我会得到一个空异常。

这是功能:

    Public Function writeData()
    Dim writeFile As StreamWriter = File.CreateText("C:\Users\Nick\documents\visual studio 2010\Projects\LoginFixed\Accounts\" + frmLogin.txtCUser.Text)
    writeFile.WriteLine("User: " + frmLogin.txtCUser.Text) ' user
    writeFile.WriteLine("Pass: " + frmLogin.txtCPass.Text) ' pass
    writeFile.WriteLine("E-mail: " + frmLogin.txtEmail.Text) ' e-mail
    writeFile.WriteLine("Securite Question 1: " + frmLogin.ComboBox1.Text)
    writeFile.WriteLine("-------------------")
    writeFile.Close()
End Function

当我所做的只是写入数据时,如何在这里返回任何类型的值?

编辑:

单击按钮时调用它:

Dim userData As WriteUserData
    userData.writeData()

但它说 userData 在被赋值之前就被使用了。

4

2 回答 2

0

你不应该不返回任何东西吗?使用Sub代替Function

Public Sub WriteData()
    (...)
End Sub

因编辑而编辑

在哪里WriteData声明?是在自己的Form还是在另一个班级?

如果此方法是您正在处理按钮单击的自己的形式,您应该只在您的事件处理程序 Sub 中编写:

Private Sub button1_Click(sender as Object, e as EventArgs) Handles button1.Click
    Me.writeData()
End Sub

否则@Mike's answer应该可以解决您的问题。

于 2013-05-17T01:06:18.403 回答
0

将您的呼叫代码更改为:

Dim userData As New WriteUserData
userData.writeData()

我猜 WriteUserData 是一个类,并且您在使用它之前没有实例化表单。New 关键字将创建一个实例。

于 2013-05-17T01:36:25.470 回答