저는 Windows Phone 7 용 계산기 응용 프로그램을 만들고 있으며 숫자 그룹화에 어려움을 겪고 있습니다. 코드는 다음과 같습니다.계산기에서 숫자 그룹화는 어떻게 이루어 집니까? 예를 들어 숫자 그룹핑 번호는 Windows 7 계산기와 동일한 방법입니다.
myNumber = myNumber.Replace (","string.Empty);
int dot = myNumber.IndexOf("0.");
strNumberWithoutDecimals = myNumber.Substring(0, (dot == -1 ? myNumber.Length : dot));
strNumberDecimals = (dot == -1 ? "" : myNumber.Substring(dot));
try
{
strNumberWithoutDecimals = Convert.ToDouble(strNumberWithoutDecimals).ToString("#,##0.000000000");
}
catch (Exception)
{
//Ignore ... for now.
}
total = strNumberWithoutDecimals + strNumberDecimals; return total;
문제는 사용자가 0.323이라고 말하고 숫자 그룹화가 켜져 있으면 숫자가 음수가 될 수 없다는 것입니다. 그것은 작동하지 않습니다. 0.323은 -0.323이 될 수 없으며 그 이유는 모르겠습니다. 어떤 도움을 주시면 감사하겠습니다. 미리 감사드립니다.
Double.TryParse()를 몇 가지 코드와 함께 사용하는 방법의 예를 보여줄 수 있습니까? – Navio53
관련된 MSDN 페이지에 대한 링크로 답변이 업데이트되었으므로 문화 기반 파싱을 사용하여 상세한 예가 있다고 생각합니다. –
이것이 내가 얻은 것입니다.하지만 아무 것도하지 않습니다. string val2 = inputPanelTextBox.Text; styles = NumberStyles.AllowDecimalPoint & NumberStyles.AllowThousands; culture = CultureInfo.CurrentCulture; if (Double.TryParse (val2, 스타일, 문화, 응답)) inputPanelTextBox.Text = ""+ 답변; – Navio53