次の方法で共有


NumericUpDown クラス

数値を表示する Windows アップダウン コントロールを表します。

この型のすべてのメンバの一覧については、NumericUpDown メンバ を参照してください。

System.Object
   System.MarshalByRefObject
      System.ComponentModel.Component
         System.Windows.Forms.Control
            System.Windows.Forms.ScrollableControl
               System.Windows.Forms.ContainerControl
                  System.Windows.Forms.UpDownBase
                     System.Windows.Forms.NumericUpDown

Public Class NumericUpDown
   Inherits UpDownBase
   Implements ISupportInitialize
[C#]
public class NumericUpDown : UpDownBase, ISupportInitialize
[C++]
public __gc class NumericUpDown : public UpDownBase,
   ISupportInitialize
[JScript]
public class NumericUpDown extends UpDownBase implements
   ISupportInitialize

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

NumericUpDown コントロールには、上向き矢印ボタンまたは下向き矢印ボタンをクリックすることによって、それぞれ増分または減分できる数値が 1 つ表示されます。 ReadOnly プロパティが true に設定されていない場合は、ユーザーが値を入力することもできます。

DecimalPlaces プロパティ、 Hexadecimal プロパティ、または ThousandsSeparator プロパティを設定することによって、数値の表示形式を指定できます。コントロールに 16 進数を表示するには、 Hexadecimal プロパティを true に設定します。必要に応じて 10 進数に桁区切り記号を表示するには、 ThousandsSeparator プロパティを true に設定します。小数点の後に表示する桁数を指定するには、表示桁数を DecimalPlaces プロパティに設定します。

コントロールに指定できる値の有効範囲を指定するには、 Minimum プロパティおよび Maximum プロパティを設定します。ユーザーが上向きまたは下向きの矢印ボタンをクリックしたときに、 Value プロパティを増分または減分する値を指定するには、 Increment 値を設定します。

UpButton メソッドまたは DownButton メソッドがコード内で呼び出された場合や、上向きまたは下向きの矢印ボタンのクリックによって呼び出された場合は、新しい値が検証され、コントロールが適切な形式の新しい値で更新されます。特に、 UserEdittrue に設定されている場合は、値を検証または更新する前に ParseEditText が呼び出されます。そして、値が Minimum 値と Maximum 値の間にあることが確認され、 UpdateEditText メソッドが呼び出されます。

使用例

NumericUpDown コントロールを作成および初期化し、一部の共通プロパティを設定し、これらのプロパティ値をユーザーが実行時に変更できるようにする例を次に示します。このコードは、フォーム上に 3 つの CheckBox コントロールが配置されていること、それらのコントロールの Click イベントのハンドラがインスタンス化されていることを前提にしています。 DecimalPlaces プロパティ、 ThousandsSeparator プロパティ、および Hexadecimal プロパティは、各チェック ボックスの Click イベント時に設定されます。

 
Public Sub InstantiateMyNumericUpDown()
    ' Create and initialize a NumericUpDown control.
    numericUpDown1 = New NumericUpDown()
    
    ' Dock the control to the top of the form.
    numericUpDown1.Dock = System.Windows.Forms.DockStyle.Top
    
    ' Set the Minimum, Maximum, and initial Value.
    numericUpDown1.Value = 5
    numericUpDown1.Maximum = 2500
    numericUpDown1.Minimum = - 100
    
    ' Add the NumericUpDown to the Form.
    Controls.Add(numericUpDown1)
End Sub    

' Check box to toggle decimal places to be displayed.
Private Sub checkBox1_Click(sender As Object, e As EventArgs)
    ' If DecimalPlaces is greater than 0, set them to 0 and round the
    ' current Value; otherwise, set DecimalPlaces to 2 and change the
    ' Increment to 0.25. 
    If numericUpDown1.DecimalPlaces > 0 Then
        numericUpDown1.DecimalPlaces = 0
        numericUpDown1.Value = Decimal.Round(numericUpDown1.Value, 0)
    Else
        numericUpDown1.DecimalPlaces = 2
        numericUpDown1.Increment = 0.25D
    End If
End Sub    

' Check box to toggle thousands separators to be displayed.
Private Sub checkBox2_Click(sender As Object, e As EventArgs)
    ' If ThousandsSeparator is true, set it to false;
    ' otherwise, set it to true. 
    If numericUpDown1.ThousandsSeparator Then
        numericUpDown1.ThousandsSeparator = False
    Else
        numericUpDown1.ThousandsSeparator = True
    End If
End Sub    

' Check box to toggle hexadecimal to be displayed.
Private Sub checkBox3_Click(sender As Object, e As EventArgs)
    ' If Hexadecimal is true, set it to false;
    ' otherwise, set it to true. 
    If numericUpDown1.Hexadecimal Then
        numericUpDown1.Hexadecimal = False
    Else
        numericUpDown1.Hexadecimal = True
    End If
End Sub


[C#] 
public void InstantiateMyNumericUpDown()
{
   // Create and initialize a NumericUpDown control.
   numericUpDown1 = new NumericUpDown();

   // Dock the control to the top of the form.
   numericUpDown1.Dock = System.Windows.Forms.DockStyle.Top;

   // Set the Minimum, Maximum, and initial Value.
   numericUpDown1.Value = 5;
   numericUpDown1.Maximum = 2500;
   numericUpDown1.Minimum = -100;
   
   // Add the NumericUpDown to the Form.
   Controls.Add(numericUpDown1);
}

// Check box to toggle decimal places to be displayed.
private void checkBox1_Click(Object sender,
                             EventArgs e)
{
   /* If DecimalPlaces is greater than 0, set them to 0 and round the 
      current Value; otherwise, set DecimalPlaces to 2 and change the 
      Increment to 0.25. */
   if (numericUpDown1.DecimalPlaces > 0)
   {
      numericUpDown1.DecimalPlaces = 0;
      numericUpDown1.Value = Decimal.Round(numericUpDown1.Value, 0);
   }
   else
   {
      numericUpDown1.DecimalPlaces = 2;
      numericUpDown1.Increment = 0.25M;
   }
}

// Check box to toggle thousands separators to be displayed.
private void checkBox2_Click(Object sender,
                             EventArgs e)
{   
   /* If ThousandsSeparator is true, set it to false; 
      otherwise, set it to true. */
   if (numericUpDown1.ThousandsSeparator)
   {
      numericUpDown1.ThousandsSeparator = false;
   }
   else
   {
      numericUpDown1.ThousandsSeparator = true;
   }
}

// Check box to toggle hexadecimal to be displayed.
private void checkBox3_Click(Object sender, 
                             EventArgs e)
{
   /* If Hexadecimal is true, set it to false; 
      otherwise, set it to true. */    
   if (numericUpDown1.Hexadecimal)
   {
      numericUpDown1.Hexadecimal = false;
   }
   else
   {
      numericUpDown1.Hexadecimal = true;
   }
}


[C++] 
public:
    void InstantiateMyNumericUpDown() {
        // Create and initialize a NumericUpDown control.
        numericUpDown1 = new NumericUpDown();
 
        // Dock the control to the top of the form.
        numericUpDown1->Dock = System::Windows::Forms::DockStyle::Top;
     
        // Set the Minimum, Maximum, and initial Value.
        numericUpDown1->Value = 5;
        numericUpDown1->Maximum = 2500;
        numericUpDown1->Minimum = -100;
        
        // Add the NumericUpDown to the Form.
        Controls->Add(numericUpDown1);
    };
 
    // Check box to toggle decimal places to be displayed.
private:
    void checkBox1_Click(Object *sender, EventArgs *e) {
        /* If DecimalPlaces is greater than 0, set them to 0 and round the 
        current Value; otherwise, set DecimalPlaces to 2 and change the 
        Increment to 0.25. */
        if (numericUpDown1->DecimalPlaces > 0) {
            numericUpDown1->DecimalPlaces = 0;
            numericUpDown1->Value = Decimal::Round(numericUpDown1->Value, 0);
        } else {
            numericUpDown1->DecimalPlaces = 2;
            numericUpDown1->Increment = 0.25;
        }
    };
 
    // Check box to toggle thousands separators to be displayed.
    void checkBox2_Click(Object *sender, EventArgs *e) {   
        /* If ThousandsSeparator is true, set it to false; 
        otherwise, set it to true. */
        if (numericUpDown1->ThousandsSeparator) {
            numericUpDown1->ThousandsSeparator = false;
        } else {
            numericUpDown1->ThousandsSeparator = true;
        }
    };
 
    // Check box to toggle hexadecimal to be displayed.
    void checkBox3_Click(Object *sender, EventArgs *e) {
        /* If Hexadecimal is true, set it to false; 
        otherwise, set it to true. */    
        if (numericUpDown1->Hexadecimal) {
            numericUpDown1->Hexadecimal = false;
        } else {
            numericUpDown1->Hexadecimal = true;
        }
    };
 

[JScript] 
function InstantiateMyNumericUpDown(){
  // Create and initialize a NumericUpDown control.
  numericUpDown1 = new NumericUpDown()
  
  // Dock the control to the top of the form.
  numericUpDown1.Dock = System.Windows.Forms.DockStyle.Top
  
  // Set the Minimum, Maximum, and initial Value.
  numericUpDown1.Value = 5
  numericUpDown1.Maximum = 2500
  numericUpDown1.Minimum = - 100
  
  // Add the NumericUpDown to the Form.
  Controls.Add(numericUpDown1)
}    

// Check box to toggle decimal places to be displayed.
function checkBox1_Click(sender : Object, e : EventArgs){
  // If DecimalPlaces is greater than 0, set them to 0 and round the
  // current Value; otherwise, set DecimalPlaces to 2 and change the
  // Increment to 0.25. 
  if(numericUpDown1.DecimalPlaces > 0){
    numericUpDown1.DecimalPlaces = 0
    numericUpDown1.Value = Decimal.Round(numericUpDown1.Value, 0)
  }else{
    numericUpDown1.DecimalPlaces = 2
    numericUpDown1.Increment = 0.25
  }
}    

// Check box to toggle thousands separators to be displayed.
function checkBox2_Click(sender : Object, e : EventArgs){
  // If ThousandsSeparator is true, set it to false;
  // otherwise, set it to true. 
  numericUpDown1.ThousandsSeparator = !numericUpDown1.ThousandsSeparator
}    

// Check box to toggle hexadecimal to be displayed.
function checkBox3_Click(sender : Object, e : EventArgs){
  // If Hexadecimal is true, set it to false;
  // otherwise, set it to true. 
  numericUpDown1.Hexadecimal = !numericUpDown1.Hexadecimal
}

必要条件

名前空間: System.Windows.Forms

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

アセンブリ: System.Windows.Forms (System.Windows.Forms.dll 内)

参照

NumericUpDown メンバ | System.Windows.Forms 名前空間 | UpDownBase | ISupportInitialize | DomainUpDown