Изображение VB.NET Listbox: http://i.epvpimg.com/FTSsf.pngSystem.ArgumentOutOfRangeException
Итак, у меня есть этот код для приватного Messages приложение:
Private Sub ReplyToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ReplyToolStripMenuItem.Click
Try
If Not ListBoxAdv1.SelectedItem.ToString = Nothing Then
Dim sp = ListBoxAdv1.SelectedItem.ToString()
cru = sp.Substring(0, sp.IndexOf(":"))
datee = sp.Substring(0, sp.IndexOf(")"))
datee = datee.Replace("(", "")
Dim us As String = sp.Substring(21, sp.IndexOf(":"))
Dim pmo As String = us.Substring(0, us.IndexOf(":")).Trim
Dim pm As New new_pm
pm.own = pmo
pm.Show()
End If
Catch ex As System.ArgumentOutOfRangeException
MsgBox(ex.ToString)
End Try
End Sub
Проблема с первого пункта, он дает мне ошибку «System .ArgumentOutOfRangeException: Индекс и длина должны ссылаться на местоположение внутри строки. " только если список содержит более двух элементов.
Когда я вызываю msgbox (sp), он показывает pm, а msgbox (sp.lenght) показывает длину от pm, например, 34 –
@AlexandruToma: Когда вы проходите это через отладчик, какая строка выдает фактическое исключение? Каковы значения времени выполнения, когда это происходит? Не предполагайте, что строки верны, ясно, что один из них - нет. – David
Dim us As String = sp.Substring (21, sp.IndexOf (":")), а длина sp равна 34 –