Hello,

I have some textboxes that are doing addition:

Dim AString As Double
AString = Convert.ToDouble(TextBox1.Text) - Convert.To(DoubleTextBox2.Text)
TextBox3.Text = AString.ToString("#,##0.00;(#,##0.00);0.00")

When the result is negative it is displayed as "(46)" or whatever the value
is.
This makes it impossible to test for a negative number to make further
additions:

TextBox5.text = Convert.ToDouble(TextBox3.text) +
Convert.ToDouble(Textbox4.text)

Is there a work-around for this? I must have negative numbers that can be
added together.

Thanks,
Chuck

Re: Negative Numbers? by Ben

Ben
Mon Sep 27 18:45:38 CDT 2004

It is displayed as "(46)" beacuse that is what your format specifier
("#,##0.00;(#,##0.00);0.00") is asking it to do for negative numbers.

Since the Convert.ToDouble function does not recognize this format, you
could check for the format you're looking for and change it appropriately:

For example:

string sText = TextBox3.Text
if (sText.StartsWith("("))
sText = "-" + sText.Remove("(").Remove(")")
end if

TextBox5.text = Convert.ToDouble(sText) + Convert.ToDouble(Textbox4.text)

Or, probably the better way to do this is to just use the result in AString
which is already a double and stores the value that you're looking for
anyways.

--
Ben Lucas
Lead Developer
Solien Technology, Inc.
www.solien.com



"Charles A. Lackman" <Charles@CreateItSoftware.net> wrote in message
news:e%23ArNnOpEHA.2588@TK2MSFTNGP12.phx.gbl...
> Hello,
>
> I have some textboxes that are doing addition:
>
> Dim AString As Double
> AString = Convert.ToDouble(TextBox1.Text) -
Convert.To(DoubleTextBox2.Text)
> TextBox3.Text = AString.ToString("#,##0.00;(#,##0.00);0.00")
>
> When the result is negative it is displayed as "(46)" or whatever the
value
> is.
> This makes it impossible to test for a negative number to make further
> additions:
>
> TextBox5.text = Convert.ToDouble(TextBox3.text) +
> Convert.ToDouble(Textbox4.text)
>
> Is there a work-around for this? I must have negative numbers that can
be
> added together.
>
> Thanks,
> Chuck
>
>



Re: Negative Numbers? by Bernie

Bernie
Mon Sep 27 18:53:12 CDT 2004

Hi Charles,

First of all, you're not doing addition; you're doing subtraction. Then,
when you fill textbox5, you'r trying to convert a string to a double. Try
debugging, set a few breakpoints, and follow the values.

HTH,

Bernie Yaeger

"Charles A. Lackman" <Charles@CreateItSoftware.net> wrote in message
news:e%23ArNnOpEHA.2588@TK2MSFTNGP12.phx.gbl...
> Hello,
>
> I have some textboxes that are doing addition:
>
> Dim AString As Double
> AString = Convert.ToDouble(TextBox1.Text) -
Convert.To(DoubleTextBox2.Text)
> TextBox3.Text = AString.ToString("#,##0.00;(#,##0.00);0.00")
>
> When the result is negative it is displayed as "(46)" or whatever the
value
> is.
> This makes it impossible to test for a negative number to make further
> additions:
>
> TextBox5.text = Convert.ToDouble(TextBox3.text) +
> Convert.ToDouble(Textbox4.text)
>
> Is there a work-around for this? I must have negative numbers that can
be
> added together.
>
> Thanks,
> Chuck
>
>



Re: Negative Numbers? by Jonathan

Jonathan
Mon Sep 27 18:36:23 CDT 2004

Don't save the number in the text box, save it in a variable. Just use the
textbox for displaying the results.

--
Jonathan Allen


"Charles A. Lackman" <Charles@CreateItSoftware.net> wrote in message
news:e%23ArNnOpEHA.2588@TK2MSFTNGP12.phx.gbl...
> Hello,
>
> I have some textboxes that are doing addition:
>
> Dim AString As Double
> AString = Convert.ToDouble(TextBox1.Text) -
Convert.To(DoubleTextBox2.Text)
> TextBox3.Text = AString.ToString("#,##0.00;(#,##0.00);0.00")
>
> When the result is negative it is displayed as "(46)" or whatever the
value
> is.
> This makes it impossible to test for a negative number to make further
> additions:
>
> TextBox5.text = Convert.ToDouble(TextBox3.text) +
> Convert.ToDouble(Textbox4.text)
>
> Is there a work-around for this? I must have negative numbers that can
be
> added together.
>
> Thanks,
> Chuck
>
>



Re: Negative Numbers? by Jay

Jay
Mon Sep 27 19:27:15 CDT 2004

Charles,
In addition to the other comments.

Use the Double.Parse overload (instead of Convert.ToDouble) that allows you
to specify the number style to use when converting, something like:

> AString = Double.Parse(TextBox1.Text, NumberStyles.Currency) -
> Double.Parse(DoubleTextBox2.Text, NumberStyles.Currency)

Read the help on NumberStyles enum to see what the various options allowed
are.

Hope this helps
Jay


"Charles A. Lackman" <Charles@CreateItSoftware.net> wrote in message
news:e%23ArNnOpEHA.2588@TK2MSFTNGP12.phx.gbl...
> Hello,
>
> I have some textboxes that are doing addition:
>
> Dim AString As Double
> AString = Convert.ToDouble(TextBox1.Text) -
> Convert.To(DoubleTextBox2.Text)
> TextBox3.Text = AString.ToString("#,##0.00;(#,##0.00);0.00")
>
> When the result is negative it is displayed as "(46)" or whatever the
> value is.
> This makes it impossible to test for a negative number to make further
> additions:
>
> TextBox5.text = Convert.ToDouble(TextBox3.text) +
> Convert.ToDouble(Textbox4.text)
>
> Is there a work-around for this? I must have negative numbers that can
> be added together.
>
> Thanks,
> Chuck
>