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

文書番号 : 16603     文書種別 : 使用方法     最終更新日 : 2005/01/29
文書を印刷する
対象製品
InputMan for .NET 3.0J
詳細
以下のサンプルコードのようにClearActionプロパティを"Null"に設定し、数値コントロールのKeyUpイベントでClearメソッドを使用することで実現できます。

[VB.NET]
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  ' 書式設定
  Number1.Format.Digit = "#####0"
  Number1.DisplayFormat.Digit = "###,##0"

  ' ClearActionプロパティ
  Number1.ClearAction = GrapeCity.Win.Input.ClearAction.Null
End Sub

Private Sub Number1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Number1.KeyUp
  If (e.KeyData = Keys.Delete Or e.KeyData = Keys.Back) And Number1.Text = 0 Then
    e.Handled = True
    Number1.Clear()
  End If
End Sub

[C#]
private void Form1_Load(object sender, System.EventArgs e)
{
  // 書式設定
  number1.Format.Digit = "#####0";
  number1.DisplayFormat.Digit = "###,##0";

  // ClearActionプロパティ
  number1.ClearAction = GrapeCity.Win.Input.ClearAction.Null;
}

private void number1_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)
{
  if ( (e.KeyData == Keys.Delete || e.KeyData == Keys.Back ) && number1.text == "0")
  {
    e.Handled = true;
    number1.Clear();
  }
}
キーワード
HowTo

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