フォームにいくつかのテキストボックスがあります。0.00を自動的に追加するためにleaveイベントのコードを書きました。2つのテキストボックスの値を3番目のテキストボックスに追加するコードを次のように記述しました
try
{
decimal netVal = 0;
decimal.TryParse(txtNetValue.Text, out netVal);
decimal disc2 = 0;
decimal.TryParse(txtDisc2.Text, out disc2);
decimal tax1 = 0;
decimal.TryParse(txtTax1.Text, out tax1);
decimal tax = netVal - disc2;
string strtax = ((tax / 100) * tax1).ToString();
txtTax2.Text = strtax.Substring(0, strtax.IndexOf(".") + 3);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
この場合、新しいボタンをクリックしてすべてのコントロールをクリアすると、例外が発生しIndex and length must refer to a location within the string. Parameter name: length
ます。