最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#中如何限制TextBox控件內(nèi)輸入值的范圍

 更新時(shí)間:2023年01月24日 13:52:13   作者:Danny_hi  
這篇文章主要介紹了C#中如何限制TextBox控件內(nèi)輸入值的范圍,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

C#限制TextBox控件內(nèi)輸入值的范圍

舉個(gè)例子

比如要限制TextBox1控件內(nèi)只能輸入1~100的數(shù)字(先將TextBox1的MaxLength屬性設(shè)置成3):

1.首先要限制輸入的只能是數(shù)值,不能是字母或其他符號;選擇添加textBox1的KeyPress事件

代碼如下:

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
? ? ? ? {
? ? ? ? ? ? if (!(Char.IsNumber(e.KeyChar)) && e.KeyChar != (char)8)
? ? ? ? ? ? ? ? e.Handled = true;
? ? ? ? }

2.再限制輸入數(shù)值的范圍1~100;選擇添加textBox1的TextChanged事件

代碼如下:

private void textBox1_TextChanged(object sender, EventArgs e)
? ? ? ? {
? ? ? ? ? ? if (textBox1.Text == "")?
? ? ? ? ? ? ?? ?textBox1.Text = 0.ToString();?
? ? ? ? ? ? int number = int.Parse(textBox1.Text);
? ? ? ? ? ? textBox1.Text = number.ToString();
? ? ? ? ? ? if (number <= 100)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? return;
? ? ? ? ? ? }
? ? ? ? ? ? textBox1.Text = textBox1.Text.Remove(2);
? ? ? ? ? ? textBox1.SelectionStart = textBox1.Text.Length;
? ? ? ? }

C#TextBox控件限制只允許輸入數(shù)字及小數(shù)點(diǎn)

//判斷按鍵是不是要輸入的類型。
?
? ? ? ? ? ? if (((int)e.KeyChar < 48 || (int)e.KeyChar > 57) && (int)e.KeyChar != 8 && (int)e.KeyChar != 46)
?
? ? ? ? ? ? ? ? e.Handled = true;
?
?
? ? ? ? ? ? //小數(shù)點(diǎn)的處理。
?
? ? ? ? ? ? if ((int)e.KeyChar == 46) ? ? ? ? ? ? ? ? ? ? ? ? ? //小數(shù)點(diǎn)
?
? ? ? ? ? ? {
?
? ? ? ? ? ? ? ? if (textBox1.Text.Length <= 0)
?
? ? ? ? ? ? ? ? ? ? e.Handled = true; ? //小數(shù)點(diǎn)不能在第一位
?
? ? ? ? ? ? ? ? else
?
? ? ? ? ? ? ? ? {
?
? ? ? ? ? ? ? ? ? ? float f;
?
? ? ? ? ? ? ? ? ? ? float oldf;
?
? ? ? ? ? ? ? ? ? ? bool b1 = false, b2 = false;
?
? ? ? ? ? ? ? ? ? ? b1 = float.TryParse(textBox1.Text, out oldf);
?
? ? ? ? ? ? ? ? ? ? b2 = float.TryParse(textBox1.Text + e.KeyChar.ToString(), out f);
?
? ? ? ? ? ? ? ? ? ? if (b2 == false)
?
? ? ? ? ? ? ? ? ? ? {
?
? ? ? ? ? ? ? ? ? ? ? ? if (b1 == true)
?
? ? ? ? ? ? ? ? ? ? ? ? ? ? e.Handled = true;
?
? ? ? ? ? ? ? ? ? ? ? ? else
?
? ? ? ? ? ? ? ? ? ? ? ? ? ? e.Handled = false;
?
? ? ? ? ? ? ? ? ? ? }
?
? ? ? ? ? ? ? ? }
?
? ? ? ? ? ? }

處理只輸入數(shù)字的

方法一:    

private void tBox_KeyPress(object sender, KeyPressEventArgs e)?
? ?
?{?
? ? ? ? ? ? if (e.KeyChar == 0x20) e.KeyChar = (char)0; ?//禁止空格鍵?
? ? ? ? ? ? if ((e.KeyChar == 0x2D) && (((TextBox)sender).Text.Length == 0)) return; ? //處理負(fù)數(shù)?
? ? ? ? ? ? if (e.KeyChar > 0x20)?
? ? ? ? ? ? {?
? ? ? ? ? ? ? ? try?
? ? ? ? ? ? ? ? {?
? ? ? ? ? ? ? ? ? ? double.Parse(((TextBox)sender).Text + e.KeyChar.ToString());?
? ? ? ? ? ? ? ? }?
? ? ? ? ? ? ? ? catch?
? ? ? ? ? ? ? ? {?
? ? ? ? ? ? ? ? ? ? e.KeyChar = (char)0; ? //處理非法字符?
? ? ? ? ? ? ? ? }?
? ? ? ? ? ? }?
}?

方法二:    

private void TextBox_KeyPress(object sender, KeyPressEventArgs e)?
?{?
? ? if(e.KeyChar!=8&&!Char.IsDigit(e.KeyChar))?
? ? {?
? ? ? e.Handled = true;?
? ? }?
}?

或者    

private void TextBox_KeyPress(object sender, KeyPressEventArgs e)?
{?
? ? if(e.KeyChar!='\b'&&!Char.IsDigit(e.KeyChar))?
? ? {?
? ? ? e.Handled = true;?
? ? }?
? ?
}?

方法三:    

private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)?
{?
if(e.KeyChar!='\b')//這是允許輸入退格鍵?
{?
if((e.KeyChar<'0')||(e.KeyChar>'9'))//這是允許輸入0-9數(shù)字?
{?
e.Handled = true;?
}?
}?
}?

方法四:    

private void textBox1_Validating(object sender, CancelEventArgs e) ?
{ ?
const string pattern = @"^\d+\.?\d+{1}quot;; ?
string content = ((TextBox)sender).Text; ?
? ?
if (!(Regex.IsMatch(content, pattern))) ?
{ ?
errorProvider1.SetError((Control)sender, "只能輸入數(shù)字!"); ?
e.Cancel = true; ?
} ?
else ?
errorProvider1.SetError((Control)sender, null); ?
}?

方法五:    

private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)?
{?
if(e.KeyChar=='.' && this.textBox1.Text.IndexOf(".")!=-1)?
{?
e.Handled=true;?
}?
? ?
if(!((e.KeyChar>=48 && e.KeyChar<=57) || e.KeyChar=='.' || e.KeyChar==8))?
{?
e.Handled=true;?
}?
? ?
}?

方法六:    

private void tbx_LsRegCapital_KeyPress(object sender, KeyPressEventArgs e)?
{?
? ? ? ? ? ? if (!Char.IsNumber(e.KeyChar) && !Char.IsPunctuation(e.KeyChar) && !Char.IsControl(e.KeyChar))?
? ? ? ? ? ? {?
? ? ? ? ? ? ? ? e.Handled = true;//消除不合適字符?
? ? ? ? ? ? }?
? ? ? ? ? ? else if (Char.IsPunctuation(e.KeyChar))?
? ? ? ? ? ? {?
? ? ? ? ? ? ? ? if (e.KeyChar != '.' || this.textBox1.Text.Length == 0)//小數(shù)點(diǎn)?
? ? ? ? ? ? ? ? {?
? ? ? ? ? ? ? ? ? ? e.Handled = true;?
? ? ? ? ? ? ? ? }?
? ? ? ? ? ? ? ? if (textBox1.Text.LastIndexOf('.') != -1)?
? ? ? ? ? ? ? ? {?
? ? ? ? ? ? ? ? ? ? e.Handled = true;?
? ? ? ? ? ? ? ? }?
? ? ? ? ? ? } ? ? ??
? } ??

方法七:

利用ASCII碼處理辦法、

{?
? ?
? ? ? ? ? ? if ((e.KeyChar <= 48 || e.KeyChar >=57) && (e.KeyChar != 8) && (e.KeyChar != 46))?
? ? ? ? ? ? ? e.Handled = true;?
================48代表0,57代表9,8代表空格,46代表小數(shù)點(diǎn)?
}

C# 文本框只能輸入數(shù)字和退格鍵

private void TextBox_KeyPress(object sender, KeyPressEventArgs e)
? {
? ?if(e.KeyChar!=8&&!Char.IsDigit(e.KeyChar))
? ?{
? ? ?e.Handled = true;
? ?}
? }

或者

private void TextBox_KeyPress(object sender, KeyPressEventArgs e)
? {
? ?if(e.KeyChar!='\b'&&!Char.IsDigit(e.KeyChar))
? ?{
? ? ?e.Handled = true;
? ?}
? }

判斷是否為空

?if (string.IsNullOrWhiteSpace(txtDir.Text))//指示指定的字符串是 null、空還是僅由空白字符組成。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • c# 播放聲音的四種方法

    c# 播放聲音的四種方法

    這篇文章主要介紹了c# 播放聲音的四種方法,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2020-11-11
  • 談?wù)凜# replace在正則表達(dá)式中的意義

    談?wù)凜# replace在正則表達(dá)式中的意義

    這篇文章主要介紹了C# replace在正則表達(dá)式中的意義的相關(guān)資料,需要的朋友可以參考下
    2016-03-03
  • 用C#繪制九宮格形式的圖片

    用C#繪制九宮格形式的圖片

    大家好,本篇文章主要講的是用C#繪制九宮格形式的圖片,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • 使用C#實(shí)現(xiàn)Windows組和用戶管理的示例代碼

    使用C#實(shí)現(xiàn)Windows組和用戶管理的示例代碼

    這篇文章主要介紹了使用C#實(shí)現(xiàn)Windows組和用戶管理的示例代碼,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2021-01-01
  • C# 通過ServiceStack 操作Redis

    C# 通過ServiceStack 操作Redis

    這篇文章主要介紹了C# 通過ServiceStack 操作Redis的示例,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-03-03
  • C#調(diào)用VB進(jìn)行簡繁轉(zhuǎn)換的方法

    C#調(diào)用VB進(jìn)行簡繁轉(zhuǎn)換的方法

    這篇文章主要介紹了C#調(diào)用VB進(jìn)行簡繁轉(zhuǎn)換的方法,通過調(diào)用VB的動(dòng)態(tài)鏈接庫實(shí)現(xiàn)繁簡轉(zhuǎn)換的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-02-02
  • ListView Adapter優(yōu)化 實(shí)例

    ListView Adapter優(yōu)化 實(shí)例

    ListView Adapter優(yōu)化 實(shí)例,需要的朋友可以參考一下
    2013-04-04
  • C#使用IronPython調(diào)用Python

    C#使用IronPython調(diào)用Python

    這篇文章主要給大家介紹了關(guān)于C#使用IronPython調(diào)用Python的相關(guān)資料, c#利用IronPython調(diào)用python的過程中總會(huì)遇到種種問題,這里給大家總結(jié)下,需要的朋友可以參考下
    2023-07-07
  • Unity實(shí)現(xiàn)全屏截圖以及QQ截圖

    Unity實(shí)現(xiàn)全屏截圖以及QQ截圖

    這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)全屏截圖以及QQ截圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • C# winform自定義翻頁控件詳解

    C# winform自定義翻頁控件詳解

    這篇文章主要為大家詳細(xì)介紹了C# winform自定義翻頁控件的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09

最新評論

台北县| 民丰县| 米脂县| 北海市| 丰顺县| 柳林县| 文化| 石林| 临沂市| 仁化县| 开远市| 德庆县| 西充县| 衡阳市| 伊川县| 蓬莱市| 辽阳县| 商河县| 新闻| 巴青县| 博客| 淮滨县| 塔河县| 祁连县| 宜宾市| 新邵县| 博罗县| 偃师市| 花垣县| 绥阳县| 灵宝市| 盐亭县| 崇文区| 东方市| 四平市| SHOW| 达州市| 洱源县| 无为县| 四会市| 衡水市|