3

ユーザーが を超える値を入力するnumericUpDown.Maximumと、コントロールの値は自動的に最大値に設定されます。これが発生したときに MessageBox を表示したいのですが、イベントが発生したときに自動的に設定された最大値が既に含まれているためcontrol.Value、それを行うことはできません。control.TextValidating

private void numericUpDown_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{
       NumericUpDown control = sender as NumericUpDown;
       decimal newValue = control.Value;

       // decimal newValue;
       // decimal.TryParse(control.Text, out newValue)

       if (newValue > control.Maximum || newValue < control.Minimum)
       {
            // MessageBox

        }

}

ありがとう

4

1 に答える 1

3

ユーザーにメッセージ ボックスをぶつけてしつこく言っても、最高のユーザー インターフェイスにはなりません。ただし、最小値と最大値を小さく/大きく設定し、ValueChanged イベントで値を確認するだけで簡単に実行できます。

于 2010-05-21T20:15:30.133 に答える