2017-10-26 4 views
-1

안녕 얘들 아 changetxt 상자의 변화를 계산하는 유료 텍스트 상자와 pricetext 상자가 있지만 매번 3.75의 유료 금액을 인쇄하려고하면 오류 입력 문자열이 올바른 형식이 아닙니다. 이것은 코드입니다. convert.todecimal을 변경하려고 시도했지만 오류가 발생하고 a-b를 적용하지 않습니다.텍스트 상자에있는 10 진수 숫자로 인쇄 방지 datagridview

private void button8_Click(object sender, EventArgs e) 
{ 
    int a = Convert.ToInt32(paidtextbox.Text); 
    int b = Convert.ToInt32(pricetxtbox.Text); 
    int c = a - b; 
    changetxtbox.Text = Convert.ToString(c); 

    //printing 
    printPreviewDialog1.Document = printDocument1; 
    printPreviewDialog1.ShowDialog(); 
} 

답변

1

입력에 문제가 있습니다. 정수는 10 진수 값을 저장할 수 없습니다. a, b 및 c의 형식으로 10 진수를 사용해야합니다. 일치하는 Convert.ToDecimal() 메서드가 있지만 decimal.TryParse()의 사용 패턴을 조사하고 싶을 수 있습니다. 또한 잘못된 텍스트 상자 데이터에서 오류 처리를 수행 할 수 있습니다.

https://msdn.microsoft.com/en-us/library/9zbda557(v=vs.110).aspx