Vb.net InvalidCastException指定的强制转换无效
如果TextBox1和TextBox2文本等于确定词,我不想制作一个图片盒和一个标签 但我收到一个错误…Vb.net InvalidCastException指定的强制转换无效,vb.net,if-statement,label,picturebox,Vb.net,If Statement,Label,Picturebox,如果TextBox1和TextBox2文本等于确定词,我不想制作一个图片盒和一个标签 但我收到一个错误… 求求你,救命 代码如下: Public Class Appearance Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If TextBox1.Text = "Brown" & TextBox
求求你,救命 代码如下:
Public Class Appearance
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If TextBox1.Text = "Brown" & TextBox2.Text = "Brown" Then
PictureBox4.Image = My.Resources.brown
PictureBox2.Image = My.Resources.blue
PictureBox5.Image = My.Resources.green
PictureBox4.Visible = True
PictureBox2.Visible = True
PictureBox5.Visible = True
Label7.Visible = True
Label8.Visible = True
Label9.Visible = True
End If
End Sub
End Class
在VB.NET中,
&
表示。您可能希望使用:
编辑:抱歉,您想将TextBox1和TextBox2值与一个字符串值进行比较
以下机构已提供正确的评估:
编辑:下面的建议是错误的。。 替换这个
If TextBox1.Text = "Brown" & TextBox2.Text = "Brown" Then
据此:
If TextBox1.Text = TextBox2.Text Then
编辑:我把解释留在这里 如果您编写
如果TextBox1.Text=“Brown”&TextBox2.Text=“Brown”,那么
,我们假设TextBox2.Text是“Brown”,发生的情况是:
- 由于
在VB中用于字符串连接,就像&
一样,+
将与链TextBox1.Text
进行比较“Brown”&TextBox2.Text=“Brown”
- 使用
,“Brown”和TextBox2.Text=“Brown”
“Brown”和TextBox2.Text将首先求值,因为
和
字符串concatener优先于
布尔求值。您将得到连接的字符串=
(=“Brown”)“BrownBrown”
- 然后,您将有
,在这个阶段,如果TextBox1.Text=“brownbrownbrown”=“Brown”则整个评估链是“BrownBrown”=“Brown”
- 将首先计算
,并返回TextBox1.Text=“BrownBrown”
。最后,您正在评估:False
如果左侧已经为False,则比较右侧没有意义。你应该知道这是VB的一个独特的小故障但是,我不知道它是否已修复,因为。但如果不是,则同样适用于
或
和或
=>你最好从一开始就使用
和和或
而不是和/或。是的,我是VB.net新手,不知道该用什么,非常感谢!请不要忘记接受答案。
If TextBox1.Text = "Brown" & TextBox2.Text = "Brown" Then
If TextBox1.Text = TextBox2.Text Then
If False = "Brown" Then ' <- Boolean comparison with String Error !
If False = True And "SameValue" = "SameValue" ' will always return False.