Numberコントロールで数値を[Delete]キーなどで削除した場合、Valueプロパティを 0 ではなく Nullにする方法はありますか?

文書番号 : 20165     文書種別 : 使用方法     最終更新日 : 2006/03/02
文書を印刷する
対象製品
InputMan for .NET 4.0J Windows Forms Edition
詳細
以下のサンプルコードのように ClearActionプロパティを "Null"に設定し、数値コントロールの TextChangingイベントで Clearメソッドを使用することで実現することが可能です。
[VB.NET]
  Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    ' 入力書式と表示書式を設定します。
    Number1.DisplayFormat = New GrapeCity.Win.Input.NumberDisplayFormat("###,###,##0.##", "", "", "-", "", "", "")
    Number1.Format = New GrapeCity.Win.Input.NumberFormat("###,###,###.##", "", "", "-", "", "", "")

    ' クリア処理が行われたときValueプロパティをNullにリセットするよう設定します。
    Number1.ClearAction = GrapeCity.Win.Input.ClearAction.Null

    '初期状態をNullにしたい場合
    'Number1.Clear()
    '初期状態を 0 にしたい場合
    Number1.Text = "0"

  End Sub

  Private Sub Number1_TextChanging(ByVal sender As System.Object, ByVal e As GrapeCity.Win.Input.TextChangingEventArgs) Handles Number1.TextChanging
    ' 入力された文字列が空の場合、クリア処理を行い入力をキャンセルします。
    If e.Result = "" Then
      Number1.Clear()
      e.Cancel = True
    End If
  End Sub

[C#]
  private void Form1_Load(object sender, EventArgs e)
  {
    // 入力書式と表示書式を設定します。
    number1.DisplayFormat = new GrapeCity.Win.Input.NumberDisplayFormat("###,###,##0.##", "", "", "-", "", "", "");
    number1.Format = new GrapeCity.Win.Input.NumberFormat("###,###,###.##", "", "", "-", "", "", "");

    // クリア処理が行われたときValueプロパティをNullにリセットするよう設定します。
    number1.ClearAction = GrapeCity.Win.Input.ClearAction.Null;

    // 初期状態をNullにしたい場合
    // number1.Clear();
    // 初期状態を 0 にしたい場合
    number1.Text = "0";
  }

  private void number1_TextChanging(object sender, GrapeCity.Win.Input.TextChangingEventArgs e)
  {
    // 入力された文字列が空の場合、クリア処理を行い入力をキャンセルします。
    if (e.Result == "")
    {
      number1.Clear();
      e.Cancel = true;
    }
  }
キーワード
機能・仕様

この文書は、以前は次のFAQ IDで公開されていました : 8393