NotAComputerScienceStudent Ответов: 2

Почему моя команда преобразовать положительное в отрицательное не работает


Так что если, например, я ввожу 20 и выполняю команду вместо того, чтобы сделать ее -20, она делает ее 20 -, то почему??

Что я уже пробовал:

textBox1.Text = (Double.Parse(textBox1.Text) * -1).ToString();

Kornfeld Eliyahu Peter

Вероятно, это связано с отображением RTL и LTR... ничего плохого в этом значении нет...

2 Ответов

Рейтинг:
1

Richard MacCutchan

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


Рейтинг:
0

George Swan

Это выглядит так System.Globalization.NumberStyles устанавливается на AllowTrailingSign Вы можете изменить свою жизнь. double.Parse метод размещения знака перед номером выглядит следующим образом.

 string res=String.Format("{0:#.##;-#.##}", (Double.Parse("200.549") * -1));
//'-200.55'

Первые 3 символа '#'форматируют положительное число. Нет знака"+", округленного до 2 знаков после запятой. Второй набор из 3 символов '#'форматирует отрицательное число. Знак" -", за которым следует число, округленное до 2 знаков после запятой.