Visual Basic错误:表达式不生成值

时间:2016-01-09 18:43:04

标签: vb.net

如何修复此错误? 我导入了System.IO.File

错误:表达式不会产生值

Imports System.IO.File
 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    TextBox9.Clear()
    If CheckBox1.Checked = True Then
        TextBox3.Text = "something"
    End If
    If CheckBox2.Checked = True Then
        TextBox3.Text = textbox3.text + "other things.."
    End If
    If CheckBox2.Checked = True Then
        TextBox3.Text = replace(textbox3.text, "a", "b")
    End If

 write = System.IO.File.AppendText("myfilepath")
        write.WriteLine(TextBox3.Text)
        write.Close()
End Sub

此行出错:

TextBox3.Text = replace(textbox3.text, "a", "b")

错误:

Expression does not produce a value.

image

1 个答案:

答案 0 :(得分:4)

尝试更改代码行:

TextBox3.Text = Strings.Replace(textbox3.text, "a", "b")

或者像这样:

TextBox3.Text = TextBox3.Text.Replace("a", "b")

在Visual Studio中,当您使用鼠标悬停时,您可以获取一些信息,如函数/类的命名空间等...也可以检查它。

更新了解释

导入System.IO.File会带来一个不会产生结果的方法,因此强制命名空间的全名(Strings.replace(...)),问题就解决了,并且不再存在冲突具有相同名称的方法。

The MS guide for the method in namespace System.IO.File