2011-10-09 5 views
3

Можно создать дубликат:
substring and the indexOf methodподстроки и функция IndexOf

У меня есть эта проблема, что я собираюсь в кругах на. Сообщение об ошибке «Нет доступных индексов IndexOf с этими аргументами».

Мой профессор сказал, что «для поиска строки Лос-Анджелес и подстрока вернет ее из текстового поля, но она должна знать, в какую позицию начать возвращать слово, и именно там входит IndexOf». Означает ли это, что подстрока и IndexOf используются вместе? Это то, что я сделал и может быть проблемой. Вот код:

Private Sub btnOrder_Click(ByVal sender As Object, ByVal e As EventArgs)  Handles btnOrder.Click 
    'Declare variables 
    Dim Price As Decimal 
    Dim txtAddress As String = "Los Angeles" 
    Dim DialogResults As String 

    'Begin If Statements to determine whether value is a number 

    If IsNumeric(txtPrice.Text) Then 
     MessageBox.Show("Please enter a nummeric value.", "Error Message") 
    End If 
    If IsNumeric(txtQuantity.Text) Then 
     MessageBox.Show("Please enter a numeric value.", "Error Message") 
    End If 
    Try 
     'Condition for Pickup days 
     If radPickUp.Checked = True Then 
      Price = CDec(txtPrice.Text) 
     ElseIf radNextDay.Checked = True Then 
      Price = CDec(CDbl(txtPrice.Text) * 0.01) 
     ElseIf radDays.Checked = True Then 
      Price = CDec(CDbl(txtPrice.Text) * 0.05) 
     End If 
     'Condition for Weekdays or Weekends pickup 
     If CDbl(Str(cboDays.Text)) = -1 Then 
      Price = CDec(CDbl(txtPrice.Text) * 0.0925) 
     End If 
     If CBool(Int(txtAddress.Substring(0, 10))) Then 
      Str(txtAddress.IndexOf(11, 0)) 
      DialogResults = CStr(MessageBox.Show("Your order is $ " & CDbl(txtPrice.Text) - 0.05)) 
     Else : DialogResults = CStr(MessageBox.Show("You order is $ " & CDbl(txtPrice.Text))) 

     End If 
    Catch ex As InvalidCastException 
     MessageBox.Show("Please enter a valid numeric value to continue.") 
    End Try  
End Sub 

Private Sub btnReset_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnReset.Click 
    'Reset controls 
    txtPrice.Clear() 
    txtQuantity.Clear() 
    txtName.Clear() 
    txtAddress.Clear() 
    cboDays.Text = String.Empty 
    txtPrice.Focus() 
End Sub 

Private Sub btnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExit.Click 
    'Quit the application 
    Me.Close() 
End Sub 

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
    MessageBox.Show("Hello", "A greeting.") 
End Sub 

Любые предложения?

ответ

1

Documentation ваш друг

Вы называете

Str(txtAddress.IndexOf(11, 0)) 

Каким является недопустимым синтаксисом. Правильный синтаксис

string.IndexOf(searchString) 

Это возвращает индекс найденного строки

-1, если он не найден.

0 если пусто

+0

Используйте последнюю версию MSDN, пожалуйста, до тех пор, пока не будет указано иное, например [Тег: .net-2.0] – abatishchev

Смежные вопросы