2

私はこれを数日しか行っていませんが、かなり混乱しています。

他のすべては正常に機能し、ボックスには整数のみが表示されますが、それでも小数値で計算されます。

4

3 に答える 3

2

あなたはできるはずですint myInt = Convert.ToInt32(numBox.Value);

numBox.Value は 10 進数ですが、そのコードによって整数に変換されます。

10 進数の値を取得した場合は、切り上げまたは切り捨てが行われることに注意してください。

編集: 正の値のみが必要な場合は、Aghilas Yakoub のソリューションの方が適している可能性があります。私の解決策では、10 進数を int に変換しますが、それでも負数が許容される可能性があります。実際にすべきことは、numBox.Minimum0 を下回らないように 0 に設定することです。

編集2:値が負のときに警告したい場合は、これを試してください:

int myInt = Convert.ToInt32(numBox.Value);
if (myInt < 0)
{
    MessageBox.Show("Warning, your number must be 0 or greater");
}

値が整数でない (10 進数の値がある) 場合に警告しますか?

于 2012-10-04T20:29:55.713 に答える
0

あなたはで試すことができます

UInt32 result = 0;

UInt32.TryParse("...",
                new CultureInfo(""),
                out result);

if(result == 0)
{
  Console.WriteLine("No parsing");
}
else
{
 Console.WriteLine("result={0}", result);
}
于 2012-10-04T20:32:35.197 に答える