C# Winform TextBox控件多行輸入方式
C# Winform TextBox控件多行輸入
TextBox控件默認(rèn)是單行輸入。怎么才能進(jìn)行多行輸入呢。
只需要將控件屬性MultiLine由false改為true即可。
C#winform對(duì)控件textbox輸入文本的限制
textbox的輸入限制
對(duì)于textbox的輸入進(jìn)行不同情況的限制(舉例)
1.只能輸入數(shù)字
private void textBox_KeyPress(object sender, KeyPressEventArgs e) ? ? ? ? { ? ? ? ? ? ? //只允許輸入數(shù)字 ? ? ? ? ? ? if(!(char.IsNumber(e.KeyChar)||e.KeyChar=='b'))//Char.IsNumber()方法用于表示指定的Unicode字符是否被歸類(lèi)為數(shù)字。 ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//'b'是退格鍵 ? ? ? ? ? ? ? ? e.Handled = true; ? ? ? ? ? ? } ? ? ? ? }
2.只能輸入數(shù)字跟小數(shù)點(diǎn)
?private void textBox_KeyPress(object sender, KeyPressEventArgs e) ? ? ? ? { ? ? ? ? ? ? if ((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8 && e.KeyChar != 46) ? ? ? ? ? ? ? ? e.Handled = true;//小數(shù)點(diǎn)得處理 ? ? ? ? ? ? if(e.KeyChar==46)//小數(shù)點(diǎn) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? if(textBox_price.Text.Length<=0) ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? e.Handled = true;//小數(shù)點(diǎn)不能在第一位 ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? else ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? float f; ? ? ? ? ? ? ? ? ? ? float oldf; ? ? ? ? ? ? ? ? ? ? bool b1 = false, b2 = false; ? ? ? ? ? ? ? ? ? ? b1 = float.TryParse(textBox_price.Text, out oldf); ? ? ? ? ? ? ? ? ? ? b2 = float.TryParse(textBox_price.Text + e.KeyChar.ToString(), out oldf); ? ? ? ? ? ? ? ? ? ? if(b2==false) ? ? ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? ? ? if(b1==true) ? ? ? ? ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? ? ? ? ? e.Handled = true; ? ? ? ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? ? ? ? ? else ? ? ? ? ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? ? ? ? ? e.Handled = false; ? ? ? ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? } ? ? ? ? ? ? } ? ? ? ? }
3.只能輸入數(shù)字跟指定字母‘X’
private void textBox_idcar_KeyPress(object sender, KeyPressEventArgs e) ? ? ? ? { ? ? ? ? ? ? //只允許輸入數(shù)字跟字母‘X' ? ? ? ? ? ? if((e.KeyChar<48||e.KeyChar>57)&&(e.KeyChar!=8)&&e.KeyChar!='X') ? ? ? ? ? ? { ? ? ? ? ? ? ? ? e.Handled = true; ? ? ? ? ? ? } ? ? ? ? }
4.只允許輸入漢字
?using System.Text.RegularExpressions;//提供正則表達(dá)式功能 ?private void textBox_name_KeyPress(object sender, KeyPressEventArgs e) ? ? ? ? { ? ? ? ? ? ? Regex rg = new Regex("^[\u4e00-\u9fa5]$");//正則表達(dá)式 ? ? ? ? ? ? if(!rg.IsMatch(e.KeyChar.ToString())&&e.KeyChar!='\b') ? ? ? ? ? ? { ? ? ? ? ? ? ? ? e.Handled = true; ? ? ? ? ? ? } ? ? ? ? }
對(duì)textbox的ImeMode屬性進(jìn)行設(shè)置也能限制其輸入方式
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
C#使用Stack類(lèi)進(jìn)行堆棧設(shè)計(jì)詳解
C#中的堆棧由System.Collections.Generic命名空間中的Stack類(lèi)定義,那么下面就跟隨小編一起學(xué)習(xí)一下C#如何Stack類(lèi)進(jìn)行堆棧設(shè)計(jì)吧2024-03-03C#獲取某路徑文件夾中全部圖片或其它指定格式的文件名的實(shí)例方法
在本篇文章里小編給大家整理的是關(guān)于C#獲取某路徑文件夾中全部圖片或其它指定格式的文件名的實(shí)例方法,需要的朋友們參考下。2019-10-10c#高效率導(dǎo)出多維表頭excel的實(shí)例代碼
這篇文章介紹了c#高效率導(dǎo)出多維表頭excel的實(shí)例代碼,有需要的朋友可以參考一下2013-11-11C#中Entity Framework常見(jiàn)報(bào)錯(cuò)匯總
給大家總結(jié)了C#中Entity Framework常見(jiàn)報(bào)錯(cuò),以及處理這些錯(cuò)誤的方法,希望能夠?yàn)槟闾峁┑綆椭?/div> 2017-11-11C#中datagridview使用tooltip控件顯示單元格內(nèi)容的方法
這篇文章主要介紹了C#中datagridview使用tooltip控件顯示單元格內(nèi)容的方法,實(shí)例分析了C#控件的相關(guān)使用技巧,需要的朋友可以參考下2016-06-06C#實(shí)現(xiàn)自定義定時(shí)組件的方法
這篇文章主要介紹了C#實(shí)現(xiàn)自定義定時(shí)組件的方法,很實(shí)用的功能,需要的朋友可以參考下2014-08-08最新評(píng)論