「System.FormatException : 入力文字列が正しくありません」というエラーが表示されます。
TextBox2.Text = objnm.rupees(Convert.ToInt64(Convert.ToDecimal(txtWOrds.Text.Trim())));
Convert.ToDecimalまず、10 進数 ( ) に変換してから Int64 ( )に変換する必要はありませんConvert.ToIn64。
次に、txtWOrds.Textが数値でないか空の場合、この例外が発生します。数値であることを確認してください。
第三に、値が数値の場合、問題が好きな場所よりもobjnm.rupees()
空の場合は入力を確認してstring.IsNullOrEmpty(txtWOrds.Text)から、 の内容の解析に進みますtextbox。
またTryParse、テキストを解析できるかどうかを評価する which を使用する必要があり、true の場合はout、このメソッドのパラメーターの値を使用できます。
あなたの場合、TextBoxが空の場合、失敗する可能性があります。
また、お金/通貨に関連するもので変換が必要かどうかわからない場合Long(そこに不一致があるようです。明確にしてください。特定の小数点のセットが必要な場合は、を使用することをお勧めしますdecimal.Round)
Decimal value = default(decimal);
bool isValid = decimal.TryParse(txtWOrds.Text.Trim(), out value);
if (isValid)
{
//your code using output 'value'
}
削除Convert.Int64してそのまま使用しますConvert.ToDecimal(理想的には を使用する必要がありますdecimal.TryParse)。また、入力テキストボックスに正しいタイプ (10 進数) が含まれていることを確認してください。