我的字符串比较不起作用。我尝试比较,等于,=并且所有这些方法都不起作用。 这是我的代码:
Dim activeChild2 = Me.ActiveMdiChild
If TypeOf activeChild2 Is Window Then
Dim activeChild As Window = Me.ActiveMdiChild
If (Not activeChild Is Nothing) Then
If activeChild.CTR_User.ToString = activeChild.User_name.ToString Then
Call activeChild.Edition()
Select Case Trim$(UCase(activeChild.Name))
Case "FRM_MISSION"
'treatment
Case "FRM_TACHE"
'treatment
End Select
Else
MsgBox("Error modification!!!!", MsgBoxStyle.Critical)
End If
End If
End If
问题在于如果activeChild.CTR_User.ToString = activeChild.User_name.ToString那么。尽管有相同的字符串toto = toto,代码总是触发到else子句并向我显示msgbox
此致
答案 0 :(得分:1)
你为什么要打电话.ToString?是activeChild.CTR_User和activeChild.User_name字符串,还是您要比较的对象?
如果它们是对象,则无法将它们与.ToString()进行比较,因为它将是不准确的。你应该使用activeChild.CTR_User.Equals(activeChild.User_name)
或activeChild.CTR_User is activeChild.User_name
之类的东西。除非我知道你正在使用什么类型,否则我无法真正给你具体细节。
您是否尝试在其上设置断点并在Visual Studio的许多调试工具中手动检查值?
答案 1 :(得分:0)
尝试使用 =
来代替 = 操作符例如: 活动的Child.CTR User.ToString与活动的Child.User_name.ToString
类似