C# Winform TextBox控件多行输入方式,多行且右边可以上下拉动

本文介绍了如何将C#Winform中的TextBox控件从默认单行模式转换为多行输入,并展示了如何通过KeyPress事件实现不同类型的输入限制,如只允许数字、数字和小数点、数字和指定字母、以及只允许汉字输入。还提及了使用ImeMode属性来调整输入方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

TextBox控件默认是单行输入。怎么才能进行多行输入呢。

只需要将控件属性MultiLine由false改为true即可。

1、将TextBox 变成多行模式,在属性中,Multiline选择True
2、可以拉动:ScrollBalls选择Vertical

 C#winform对控件textbox输入文本的限制

textbox的输入限制

对于textbox的输入进行不同情况的限制(举例)

1.只能输入数字

1

2

3

4

5

6

7

8

private void textBox_KeyPress(object sender, KeyPressEventArgs e)

        {

            //只允许输入数字

            if(!(char.IsNumber(e.KeyChar)||e.KeyChar=='b'))//Char.IsNumber()方法用于表示指定的Unicode字符是否被归类为数字。

            {                                              //'b'是退格键

                e.Handled = true;

            }

        }

登录后复制

2.只能输入数字跟小数点

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

 private void textBox_KeyPress(object sender, KeyPressEventArgs e)

        {

            if ((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8 && e.KeyChar != 46)

                e.Handled = true;//小数点得处理

            if(e.KeyChar==46)//小数点

            {

                if(textBox_price.Text.Length<=0)

                {

                    e.Handled = true;//小数点不能在第一位

                }

                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.只能输入数字跟指定字母‘X’

1

2

3

4

5

6

7

8

private void textBox_idcar_KeyPress(object sender, KeyPressEventArgs e)

        {

            //只允许输入数字跟字母‘X'

            if((e.KeyChar<48||e.KeyChar>57)&&(e.KeyChar!=8)&&e.KeyChar!='X')

            {

                e.Handled = true;

            }

        }

4.只允许输入汉字

1

2

3

4

5

6

7

8

9

 using System.Text.RegularExpressions;//提供正则表达式功能

 private void textBox_name_KeyPress(object sender, KeyPressEventArgs e)

        {

            Regex rg = new Regex("^[\u4e00-\u9fa5]$");//正则表达式

            if(!rg.IsMatch(e.KeyChar.ToString())&&e.KeyChar!='\b')

            {

                e.Handled = true;

            }

        }

对textbox的ImeMode属性进行设置也能限制其输入方式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值