0

我正在为游戏(我的世界)制作启动器,但我一直收到此错误。我这样做是为了让您通过 OpenGileDialog 打开一个文件(minecraft.exe),然后将文件名输入到文本框(textbox1)中,但在我尝试制作的代码,所以如果路径不包含“我的世界”会说无效路径

这是我的代码

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    OpenFileDialog1.ShowDialog()
    TextBox1.Text = OpenFileDialog1.FileName
    If TextBox1.Contains("Minecraft") = False Then
        MsgBox("Invalid Path")
    End If
End Sub

TextBox1.Contains("minecraft") = False 出现错误,提示“'String' 的值无法转换为 'System.Windows.Forms.Control'”请帮助...

4

1 回答 1

2

你错过了.Text

If Not TextBox1.Text.Contains("Minecraft") Then
   '...
End If

TextBox继承自Control,它可以有子控件。该方法Control1.Contains(Control2) 需要另一个Control.

由于您没有Option Strict On编译器正在尝试将字符串转换"Minecraft"为 a Control,因此给出了您获得的异常。我强烈建议您Option Strict On在项目设置上使用以避免进一步的隐式转换。

您需要访问该TextBox1.Text属性,该属性返回 a String,并具有.Contains()您期望的方法,如您在上面的代码中所见。

于 2013-02-20T14:44:24.340 回答