Добавить цифры в c # - PullRequest
       12

Добавить цифры в c #

1 голос
/ 06 сентября 2011

у меня есть числовое текстовое поле, которое мне нужно, чтобы добавить его значение к другому числу Я пробовал этот код

String add = (mytextbox.Text + 2)

но он добавляет число два в качестве другого символа, например, если значение моего текстового поля равно 13, результат станет 132

Ответы [ 7 ]

18 голосов
/ 06 сентября 2011

Тип mytextbox.Text - строка .Вам нужно проанализировать его как число, чтобы выполнить целочисленную арифметику, например,

int parsed = int.Parse(mytextbox.Text);
int result = parsed + 2;
string add = result.ToString(); // If you really need to...

Обратите внимание, что вы можете использовать int.TryParse для обработки ситуации, когда содержимоетекстового поля , а не целое число, без необходимости перехвата исключения.Например:

int parsed;
if (int.TryParse(mytextbox.Text, out parsed))
{
    int result = parsed + 2;
    string add = result.ToString();
    // Use add here    
}
else
{
    // Indicate failure to the user; prompt them to enter an integer.
}
4 голосов
/ 06 сентября 2011
String add = (Convert.ToInt32(mytextbox.Text) + 2).ToString();

Для вычисления необходимо преобразовать текст в целое число.

2 голосов
/ 06 сентября 2011
const int addend = 2; 
string myTextBoxText = mytextbox.Text;
var doubleArray = new double[myTextBoxText.ToCharArray().Length];
for (int index = 0; index < myTextBoxText.ToCharArray().Length; index++)
{
    doubleArray[index] = 
        Char.GetNumericValue(myTextBoxText.ToCharArray()[index]) 
        * (Math.Pow(10, (myTextBoxText.ToCharArray().Length - 1) - index));
}
string add  = 
    (doubleArray.Aggregate((term1, term2) => term1 + term2) + addend).ToString();
1 голос
/ 06 сентября 2011
string add=(int.Parse(mytextbox.Text) + 2).ToString()

, если вы хотите убедиться, что преобразование не выдает никаких исключений

  int textValue = 0;
  int.TryParse(TextBox.text, out textValue);
  String add = (textValue + 2).ToString();
1 голос
/ 06 сентября 2011
int intValue = 0;
if(int.TryParse(mytextbox.Text, out intValue))
{
    String add = (intValue + 2).ToString();
}

Я предпочитаю TryPase, тогда вы знаете, что запасной вариант будет равен нулю (или что вы определили как значение по умолчанию для intValue)

0 голосов
/ 06 сентября 2011

Другие опубликовали наиболее распространенные ответы, но просто чтобы дать вам альтернативу, вы можете использовать свойство для получения целочисленного значения TextBox.

Это может быть хорошим подходом, если вам нужно повторно использовать целое число несколько раз:

private int MyTextBoxInt
{
    get
    {
        return Int32.Parse(mytextbox.Text);
    }
}

И тогда вы можете использовать свойство следующим образом:

int result = this.MyTextBoxInt + 2;
0 голосов
/ 06 сентября 2011

Вы можете использовать метод int.Parse для разбора текстового содержимого в целое число:

String add = (int.Parse(mytextbox.Text) + 2).ToString();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...