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

首頁(yè) > 編程 > C# > 正文

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

2020-01-24 02:11:52
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

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

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

復(fù)制代碼 代碼如下:

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

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

復(fù)制代碼 代碼如下:

/// <summary>
/// 粘貼時(shí)過(guò)濾不是數(shù)字的字符
/// </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();
    //定義輸入焦點(diǎn)在最后一個(gè)字符
    textbox1.SelectionStart = textbox1.Text.Length;
  }
}

希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 长沙市| 德钦县| 修武县| 泸水县| 东明县| 五峰| 沙河市| 房产| 延庆县| 浮山县| 柘荣县| 天峻县| 扶绥县| 吴旗县| 灵川县| 巢湖市| 阿坝| 扎兰屯市| 镇宁| 芜湖县| 新营市| 邛崃市| 安宁市| 墨脱县| 昌邑市| 茂名市| 梁平县| 若尔盖县| 冀州市| 锦屏县| 郁南县| 沂源县| 锡林郭勒盟| 黄平县| 辽源市| 年辖:市辖区| 乡城县| SHOW| 长海县| 岗巴县| 于田县|