国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#中winform控制textbox輸入只能為數字的方法

2019-10-29 21:46:08
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了C#中winform控制textbox輸入只能為數字的方法,包括使用keyPress事件限制鍵盤輸入以及TextChanged事件限制粘貼等情況,來實現控制輸入為數字的功能,需要的朋友可以參考下
 

本文實例講述了C#中winform控制textbox輸入只能為數字的方法。分享給大家供大家參考。具體實現方法如下:

添加keyPress事件,控制鍵盤輸入只能是自然數:

 

復制代碼代碼如下:

/// <summary>
/// 控制鍵盤輸入只能是自然數
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void textbox1_KeyPress(object sender, KeyPressEventArgs e)
{
  // 允許輸入:數字、退格鍵(8)、全選(1)、復制(3)、粘貼(22)
  if (!Char.IsDigit(e.KeyChar) && e.KeyChar != 8 &&
  e.KeyChar != 1 && e.KeyChar != 3 && e.KeyChar != 22)
  {
    e.Handled = true;
  }
}

 

但是這樣不能避免粘貼文字里含有非數字字符的情況,可以添加TextChanged事件進行控制:

 

復制代碼代碼如下:

/// <summary>
/// 粘貼時過濾不是數字的字符
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void textbox1_TextChanged(object sender, EventArgs e)
{
  var reg = new Regex("^[0-9]*$");
  var str = textbox1.Text.Trim();
  var sb = new StringBuilder();
  if (!reg.IsMatch(str))
  {
    for (int i = 0; i < str.Length; i++)
    {
      if (reg.IsMatch(str[i].ToString()))
      {
        sb.Append(str[i].ToString());
      }
    }
    textbox1.Text = sb.ToString();
    //定義輸入焦點在最后一個字符
    textbox1.SelectionStart = textbox1.Text.Length;
  }
}

 

希望本文所述對大家的C#程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁化县| 绥德县| 上林县| 遂溪县| 鄱阳县| 西平县| 乐清市| 扎赉特旗| 闸北区| 梅河口市| 保德县| 民勤县| 黑龙江省| 北碚区| 望都县| 厦门市| 泸溪县| 衢州市| 出国| 兴城市| 永修县| 扬中市| 开化县| 海晏县| 手游| 南乐县| 铅山县| 乐都县| 海宁市| 水富县| 洞头县| 仁化县| 宜章县| 奎屯市| 新巴尔虎右旗| 宕昌县| 怀来县| 佳木斯市| 女性| 洪湖市| 若羌县|