powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / О преобразовании числа строки в число int
7 сообщений из 7, страница 1 из 1
О преобразовании числа строки в число int
    #37576148
OlegDnepr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Для программистов на языке VB6, язык C# преподносит немало сюрпризов. «Три сосны» порой оказываются лесом. Итак: на платформе WPF кнопка Button bt1 и три элемента TextBox с именами tx1, tx2 и tx3 соответственно. К примеру, tx1 = “80”, tx2 = “30” tx3 = “0” и при нажатии кнопки bt1, элемент tx3 должен показать сумму, т. е. tx3 = “120”. Поскольку язык C# в данном случае требует преобразования строки в число, удовлетворяем его просьбу:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
        private void bt1_Click(object sender, RoutedEventArgs e)
        {
            int cnv1, cnv2, cnv3;

            cnv1 = Convert.ToInt32(tx1.Text);
            cnv2 = Convert.ToInt32(tx2.Text);
            cnv3 = Convert.ToInt32(tx3.Text);

            cnv3 = cnv1 + cnv2;

        }



Редактор доволен, компиляция тоже проходит без исключений, но… при нажатии на кнопку bt1 ничего не происходит - tx3 мёртво держит “0”… Такую же ситуацию выдаёт и следующий код:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
       private void bt1_Click(object sender, RoutedEventArgs e)
        {
            int cnv1, cnv2, cnv3;

            cnv1 = int.Parse(tx1.Text);
            cnv2 = int.Parse(tx2.Text);
            cnv3 = int.Parse(tx3.Text);

            cnv3 = cnv1 + cnv2;
        }



Где собака порылась? Help!!! Заранее благодарен.
...
Рейтинг: 0 / 0
О преобразовании числа строки в число int
    #37576153
AlexeiK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OlegDnepr,

ты зачет :)
спишь видимо мало, раз такая низкая концентрация.
допиши в программку:

tx3.Text=cnv3;
...
Рейтинг: 0 / 0
О преобразовании числа строки в число int
    #37576262
OlegDnepr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AlexeiK,

Увжаемый AlexeiK! Ваш совет показался мне весьма вразумительным и логичным, но в реальной программе в рекомендуемой Вами строчке tx3.Text = cnv3; редактор подчеркнул cnv3 и ругнулся «Неявное преобразование типа “int” в тип “string” невозможно». Замкнутый круг получается…
...
Рейтинг: 0 / 0
О преобразовании числа строки в число int
    #37576304
OlegDnepr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OlegDnepr,
Докопался! Дело в том, что в строчке tx3.Text = cnv3; символ «=» должен быть заменён на символ присваивания «+=». Теперь рабочий код выглядит так:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
        private void bt1_Click(object sender, RoutedEventArgs e)
        {
            int cnv1, cnv2, cnv3;

            cnv1 = int.Parse(tx1.Text);
            cnv2 = int.Parse(tx2.Text);
            cnv3 = int.Parse(tx3.Text);

            cnv3 = cnv1 + cnv2;
            tx3.Text += cnv3;
        }


Правда, теперь не понятно, почему итоговая сумма всегда начинается с нуля.
...
Рейтинг: 0 / 0
О преобразовании числа строки в число int
    #37576361
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OlegDnepr,

авторНеявное преобразование типа “int” в тип “string” невозможно
так очевидно же, что нужно преобразовать тип из одного в другое.

самый простой способ
Код: c#
1.
2.
cnv3 = cnv1 + cnv2;
tx3.Text = cnv3.ToString();
...
Рейтинг: 0 / 0
О преобразовании числа строки в число int
    #37576522
OlegDnepr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
уТКа,
Наконец-то уважаемый уТКа поставил окончательную точку и код заработал именно так, как надо. За помощь премного благодарен. Желаю успкхов.
private void bt1_Click(object sender, RoutedEventArgs e)
{
int cnv1, cnv2, cnv3;

cnv1 = int.Parse(tx1.Text);
cnv2 = int.Parse(tx2.Text);
cnv3 = int.Parse(tx3.Text);

cnv3 = cnv1 + cnv2;
tx3.Text = cnv3.ToString();
}
...
Рейтинг: 0 / 0
О преобразовании числа строки в число int
    #37576538
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OlegDneprуТКа,
Наконец-то уважаемый уТКа поставил окончательную точку и код заработал именно так, как надо. За помощь премного благодарен. Желаю успкхов.
private void bt1_Click(object sender, RoutedEventArgs e)
{
int cnv1, cnv2, cnv3;

cnv1 = int.Parse(tx1.Text);
cnv2 = int.Parse(tx2.Text);
cnv3 = int.Parse(tx3.Text);
cnv3 = cnv1 + cnv2;
tx3.Text = cnv3.ToString();
}


Зачем парсить TextBox3, если вы его не используете в вычислениях?)
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / О преобразовании числа строки в число int
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]