VB.NET непрерывно добавляет единицу в текстовое поле

Я пытаюсь создать программу с кнопкой и текстовым полем. Каждый раз, когда нажимается кнопка, я хочу, чтобы она добавляла ее в текстовое поле. Я все время получаю эту ошибку:

Не удалось разрешить перегрузку, потому что ни один из доступных 'Int' не принимает такое количество аргументов.

Также я огромный n00b. Вот где я сейчас, заранее спасибо.

Option Strict On

Public Class Form1

  Private Sub btnPlus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPlus.Click
    Dim i As Integer = Int.Parse(txtAdd.Text)
    i += 1
    txtAdd.Text = i.ToString()
  End Sub
End Class

Ответов (4)

Решение

Использование метода TryParse будет означать, что код не генерирует исключение формата, если входные данные не могут быть проанализированы до целого числа.

Private Sub btnPlus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    Dim i as Integer
    If Integer.TryParse(txtAdd.Text, i) Then
        i += 1
        txtAdd.Text = i.ToString()
    End If

End Sub

Попробуйте вызвать Convert.ToInt32 (txtAdd.Text)

Dim i As Integer = Convert.ToInt32(txtAdd.Text)
Dim i As Integer = Int32.Parse(txtAdd.Text)

или

Dim i As Integer = Integer.Parse(txtAdd.Text)

Класса с названием «Int» не существует.

Похоже, вы хотели сделать: Integer.Parse(txtAdd.Text)

Кроме того, я бы предложил создать Integer i переменную-член (поле) Form1. Таким образом, вам не нужно было бы анализировать его от строки до int.

Public Class Form1

    Dim i As Integer

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        i += 1
        Me.TextBox1.Text = i.ToString()
    End Sub
End Class