C#控件编程之文本框(TextBox)的使用

 更新时间:2023年07月12日 10:18:21   作者:To be better now  
这篇文章主要介绍了C#控件编程之文本框(TextBox)的使用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

以自身开发经验,从属性与事件详解文本框(TextBox)的用法。

编程语言:C#

编程环境:Visual Studio 2019

TextBox提供文字输入和显示功能,应用广泛,随处可见,作为一个Winform开发者,掌握它是必要的。

TextBox控件属性 

布局

  • Location:Point型,定义控件左上角相对于其容器左上角的坐标,初始为(0,0)。(若是工具箱拖动创建,初始为放置控件的左上角坐标)
  • MaximumSize:Size型,定义控件可以调整到的最大尺寸,初始为(0,0)。(注:初始时,相当于不起作用,可以随意拉大)
  • MinimumSize:Size型,定义控件可以调整到的最小尺寸,初始为(0,0)。
  • Size:Size型,定义控件的尺寸(宽,高)。

设计

  • Name:string型,定义控件的成员变量名,初始为“button1”。
  • GenerateMember:bool型,指示是否生成该控件的成员变量,初始为ture。
  • Locked:bool型,指示在设计时是否锁定控件的坐标和尺寸,初始为false。(注:将此项设置为true将导致无法拖动控件,但仍可以通过写代码修改控件的坐标和尺寸)
  • Modifiers:枚举型,定义控件的可访问性级别,枚举值有Private(同类可访问)、Public(公开访问)、Protected(同类及派生类可访问)、Internal(同程序集可访问)、Protected Internal(同程序集及派生程序集可访问),初始为Private。(注:要想在其他类里访问该控件,需要修改这个属性,这个属性无法写代码修改)

外观

  • BackColor:Color型,定义控件的背景色,初始为系统颜色Control。
  • BorderStyle:BorderStyle枚举型,定义控件边框类型,枚举值有None(无边框)、FixedSingle(单边框)、Fixed3D(3D边框),初始为Fixed3D。
  • Cursor:Cursor型,定义鼠标移动到控件时显示的光标,初始为Default。
  • Font:Font型,定义控件显示文本的字体和字号,初始为宋体,9pt。
  • ForeColor:Color型,定义控件显示文本的颜色,初始为系统颜色ControlText。
  • Lines:string[]型,定义多行编辑显示的文本项,初始为空。(注:设置允许多行编辑该属性才有效,即Multiline=true,在属性框里直接编辑该属性时,用回车符表示换行,写代码添加项时,string[]数组的每一项就是一行)
  • RightToLeft:RightToLeft枚举型,定义控件是否从右往左绘制,枚举值有Yes(从右往左绘制)、No(从左往右绘制)、Inherit(继承当前,通常是从左往右绘制),初始为No。
  • ScrollBars:ScrollBars枚举型,定义多行编辑的文本框所显示的滚动条,枚举值有None(不显示)、Horizontal(显示水平滚动条)、Vertical(显示竖直滚动条)、Both(显示水平和竖直滚动条),初始为None。(注:设置允许多行编辑该属性才有效,即Multiline=true)
  • Text:string型,定义控件显示的文本,初始为空。
  • TextAlign:ContentAlignment枚举型,定义控件显示文本的对齐方式,枚举值包括Left(左对齐)、Right(右对齐)、Center(居中),初始为Left。

行为 

  • AcceptsTab:bool型,指示在多行编辑时是否能用Tab键,初始为false。(注:设置允许多行编辑该属性才有效,即Multiline=true)

  • CharacterCasing: CharacterCasing枚举型,定义输入字符是否保持大写或小写,枚举值有Normal(保持不变)、Upper(转换为大写)、Lower(转换为小写),初始为Normal。
  • ContextMenuStrip:定义用户右击控件时显示的快捷菜单,初始为空。(注:若要创建此菜单,需要写代码创建或者拖动创建ContextMenuStrip后再选择这里,无法在属性框直接创建,详见我的另一篇
  • Enabled:bool型,指示是否启用该控件,初始为true。(注:将该属性设置为false,控件变灰,为不可用状态)
  • HideSelection:bool型,指示当编辑控件失去焦点时,选定内容是否取消选定显示,初始为true。

  • MaxLength:int型,定义允许输入的最大字符数,初始为32767。
  • Multiline:bool型,指示是否允许多行编辑,初始为false。

  • PasswordChar:char型,定义编辑控件的掩码,初始为空。(注:若设置此属性,则输入的所有字符都会被显示为所设置的字符,常设置*(星号)来表示对输入密码的隐藏)

  • ReadOnly:bool型,指示是否可以编辑文本,初始为false。
  • UseSystemPasswordChar:bool型,指示单行编辑文本是否以默认的密码字符显示,初始为false。(注:设置允许多行编辑该属性无效,即Multiline=false该属性才有效)

  • Visible:bool型,指示是否显示该控件,初始为true,为false则隐藏控件。

TextBox控件事件 

除一些公共事件外,常用的特有的事件是TextChanged事件。

  • TextChanged:编辑文本事件,是TextBox最常用的事件,TextBox里的文本发生变化时触发。(双击设计窗体中的按钮可直接注册该事件,并自动转到该事件的方法体)

总结

TextBox控件是使用最广泛的文本编辑控件,有很多用于实现不同功能的属性,支持单行编辑和多行编辑,普通输入和密码输入,自动转换大小写等,使用简单且功能强大。

善用TextChange事件,可以实现输入检查,动态存取输入数据等功能。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。 

相关文章

  • c# 实例——绘制波浪线(附源码)

    c# 实例——绘制波浪线(附源码)

    这篇文章主要介绍了c#如何绘制波浪线,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • C# 如何调用SAP RFC

    C# 如何调用SAP RFC

    这篇文章主要介绍了C# 如何调用SAP RFC,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下
    2020-12-12
  • 使用C#代码重新排列PDF页面的操作代码

    使用C#代码重新排列PDF页面的操作代码

    对于页面顺序混乱的 PDF 文档,重新排列页面可以避免读者产生困惑,同时也能让文档结构更加清晰有序,本文将演示如何使用 Spire.PDF for .NET 以编程方式重新排列现有 PDF 文档中的页面,需要的朋友可以参考下
    2025-12-12
  • 对int array进行排序的实例讲解

    对int array进行排序的实例讲解

    下面小编就为大家分享一篇对int array进行排序的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • C#.NET实现网页自动登录的方法

    C#.NET实现网页自动登录的方法

    这篇文章主要介绍了C#.NET实现网页自动登录的方法,以实例形式分析了C#实现点击自动登录的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-09-09
  • C#使用SqlSugarClient进行数据访问并实现了统一的批量依赖注入(示例代码)

    C#使用SqlSugarClient进行数据访问并实现了统一的批量依赖注入(示例代码)

    M为 BaseDto 请用C# 给出一个案例,支持不同表对应不同的业务逻辑层,然后不同仓储实例,不同表的业务,都实现统一的批量依赖注入,下面通过示例给大家演示如何使用SqlSugarClient进行数据访问,并实现了统一的批量依赖注入,感兴趣的朋友跟随小编一起看看吧
    2024-05-05
  • C#实现打字小游戏

    C#实现打字小游戏

    这篇文章主要为大家详细介绍了C#实现打字小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-05-05
  • C#数字图象处理之肤色检测的方法

    C#数字图象处理之肤色检测的方法

    这篇文章主要介绍了C#数字图象处理之肤色检测的方法,可实现针对肤色的检测功能,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • C#项目中引用Swagger的详细步骤和配置方式

    C#项目中引用Swagger的详细步骤和配置方式

    本文详细介绍了如何在C#项目中安装和配置Swagger,包括添加相关NuGet包、配置Swagger服务和启用Swagger中间件,还讲解了如何为API添加注释和描述,配置安全定义,以及如何使用Swagger进行API测试和调试
    2025-02-02
  • 浅谈c#中const与readonly区别

    浅谈c#中const与readonly区别

    C#引入了readonly修饰符来表示只读域,const来表示不变常量。顾名思义对只读域不能进行写操作,不变常量不能被修改,这两者到底有什么区别呢?
    2015-06-06

最新评论