winform的textbox文本被选中时的事件

合集下载

VS2017winform窗体控件常用属性、方法、事件(不完全摘要)

VS2017winform窗体控件常用属性、方法、事件(不完全摘要)

VS2017winform窗体控件常⽤属性、⽅法、事件(不完全摘要)属性:1. AutoSize 属性:⽤来获取或设置⼀个值,该值指⽰是否⾃动调整控件的⼤⼩以完整显⽰其内容。

2. Anchor 属性:⽤来确定此控件与其容器控件的固定关系的。

3. BorderStyle 属性:⽤来设置或返回边框。

4. ReadOnly 属性:⽤来获取或设置⼀个值,该值指⽰⽂本框中的⽂本是否为只读。

5. PasswordChar 属性:是⼀个字符串类型,允许设置⼀个字符,运⾏程序时,将输⼊到 Text 的内容全部显⽰为该属性值,从⽽起到保密作⽤,通常⽤来输⼊⼝令或密码。

6. Text 属性:⽤来设置或返回控件内显⽰的⽂本,该属性也可以包含访问键,即前⾯带有“&”符号的字母,这样⽤户就可以通过同时按 Alt 键和访问键来选中控件。

7. Button8. DialogResult 属性:当使⽤ ShowDialog ⽅法显⽰窗体时,可以使⽤该属性设置当⽤户按了某按钮后,ShowDialog ⽅法的返回值。

值有:OK、Cancel、Abort、Retry、Ignore、Yes、No 等。

9. FlatStyle 属性:⽤来设置按钮的外观。

3d、平的、跟随系统、弹出;10. RadioButton || CheckBox11. Checked 属性:⽤来设置或返回单选按钮是否被选中,选中时值为 true,没有选中时值为 false。

(单选、多选控件)12. Items 属性:⽤于存放列表框中的列表项,是⼀个集合。

13. ListBox14. MultiColumn 属性:⽤来获取或设置⼀个值,该值指⽰ ListBox 是否⽀持多列。

15. SelectedItem 属性:获取或设置 ListBox 中的当前选定项。

16. SelectedItems 属性:获取 ListBox 控件中选定项的集合。

17. PictureBox18. SizeMode 属性:⽤来决定图像的显⽰模式。

WinForm常用窗体控件的使用

WinForm常用窗体控件的使用
14
(8)BackColor: 用来获取或设置控件的背景色。 (9)Font:
用来获取或设置控件的字体,包括字体名称、字号以
及是否以斜体、加粗和下划线显示。 (10)Locked: 确定是否可以移动控件或者调整控件的大小。 (11)TabIndex: 用来获取或设置控件的Tab键顺序。
15
(12)TextAlign: 用来确定文本对齐方式。
4、为button1的click事件填写代码为
label1.visible=false; button1.enabled=false;
button2.enabled=true; 为button2的click事件填写代码为 label1.visible=true; button1.enabled=true; button2.enabled=false;
24
例:MouseEnter事件练习。 private void button1_MouseEnter(object sender, System.EventArgs e) { //颜色在System.Drawing名称空间下 button1.BackColor=Color.Red; }
25
例:MouseLeave事件练习。
Visual C# 程序设计
常见窗体控件的使用
1
本章中我们将主要介绍以下内容: windows窗体 标签 按钮 文本框 单选按钮 复选按钮 列表框 组合框 ToolTip控件 PictureBox控件
2
利用C#编写GUI(Graphics User Interface)应用 程序的一般步骤: (1)建立“Windows应用程序”项目 (2)设计应用程序界面
11
5. 2 WinForms中的常用控件

Winform控件的使用

Winform控件的使用

bel标签1).说明Label标签用于显示字符或者提示作用.2).设置其文本内容lblArea.Text = area.ToString(); /* lblArea 为控件名字*/2.ToolTip控件1).说明ToolTip用于提示与指定控件相关的文本.当鼠标位于某控件时便会显示提示文本. 2).设置提示文本this.toolTip.SetToolTip(this.tbar, this.tbar.Value.ToString());说明:1)toolTip为该窗体上的ToolTip控件的名字;2)tbar为关联的控件的名字;3)函数第一个参数为关联的控件,第二个参数为提示文本.3.Timer控件1).说明Timer控件为定时器,用于设定的时间间隔来响应相应的操作.2).时间间隔设置在属性面板中,Interval属性用于设置时间间隔,单位为毫秒(ms).3).常用数据成员及成员函数1.启用定时器:成员函数Start;2.停用定时器:成员函数Stop;4.TextBox控件1).说明TextBox为编辑框,用来输入数据.2).常用成员函数及数据成员1.Text:获取或设置当前TextBox中的文本,返回类型为string;2.Focus():设置焦点位于当前TextBox控件上;3.SelectAll():选中编辑框中的全部内容.5.TrackBar控件1).说明TrackBar控件为滚动条,通过滑动来调节数据大小.2).属性设置通过Orintation属性来设置控件的方向,可以是水平方向(Horizontal)也可以是竖直方向(vertical);通过Maximum设置其最大值;通过Minimum设置其最小值.控件的Anchor属性表示大小改变时候伸张的方向.3).常用成员函数及数据成员1.Value:通过数据成员Value可以返回当前滚动条的数值;2.Enabled:该值设置为False则该控件处于灰选状态;boBox控件1).说明ComboBox控件为下拉列表框,用于选择需要的数据.2).属性设置1.Items:编辑此属性可以设置列表框中选项内容;2.DropDownStyle:此属性设置下拉列表框样式.设置为DropDown时,则即可以从下拉列表中选择又可以进行编辑;设置为DropDownList时只能进行选择;3).常用数据成员及成员函数1.SelectedIndex:设置或获取选中内容的索引,从0开始;2.Text:设置或获取控件要显示的内容;3.Items:列表框中所包含所有项的集合.Items.Add()用于添加一个数据项;Items.Remove()用于添加一个数据项;Items.Clear()清空所有数据项;items.count获取数据项数目.4.Focus():设置焦点;4).使用示例this.cboRole.Items.Add("管理员"); /*向列表框cboRole添加一个数据项*/this.cboRole.SelectedIndex = 0; /*设置选中第一个数据项*/this.cboRole.Focus(); /*设置焦点*/绑定DataTable:this.cbox_Servicer.DataSource = ds.Tables[0];this.cbox_Servicer.DisplayMember = "姓名";7.MenuStrip控件1).说明1.MenuStrip控件为菜单栏控件.如果要显示菜单项之间的分隔符,则在键入文本处输入“-”符即可;2.MdiWindowListItem用来指定显示MDI窗口列表的项.右图为将该项指定为菜单项“窗口”后的效果,此时所有打开的子窗口都可以在菜单项“窗口”下拉中看到.从右图的窗口可以看出已经打开的子窗口有“用户管理”及“部门管理”两个子窗口.3.8.Panel控件1).说明Panel控件用于绘图或者显示图片等功能.2).常用成员函数及数据成员①添加控件将动态生成的控件添加到面板中:this.panContainer.Controls.Add(picTemp); panContainer为Panel控件名称.9.ErrorProvider控件1).说明ErrorProvider控件用来提示错误信息,通过与其它控件绑定来使用.2).常用成员函数及数据成员1.SetError():设置指定控件的错误描述字符;2.BlinkRate:获取或设置闪烁速率;3.Icon:设置错误提示图标;3).使用示例this.errorProvider.SetError(this.cboRole, "请输入工号!"); /* cboRole 为控件Name*/ this.errorProvider.SetError(this.cboRole, ""); /*取消cboRole 控件的错误提示*/10.ListView控件1).常用操作1.清空操作this.lvUsers.Items.Clear(); /*清空所有记录*/this.lvUsers.Clear(); /*清空整个列表(包括表头)*/注:lvUsers为ListView控件Name2.添加新的记录每一项包含ID及密码两个子项(roleID为int型,rolePassword为string型)ListViewItem lvItem = this.lvUsers.Items.Add(roleID.ToString());lvItem.SubItems.Add(rolePasswrd);3.判断是否有选中项通过数据成员SelectedItems来判断.使用示例如下:this.lvUsers.SelectedItems == null;或者this.lvUsers.SelectedItems.Count == 0 ; /*选中项数*/4.获取选中项内容下面以选中一项时为例,每一个列表项有ID和Password两个子项.ListViewItem selectedItem = this.lvUsers.SelectedItems[0];int userID = int.Parse(selectedItem.SubItems[0].Text);string password = selectedItem.SubItems[1].Text;5.添加表头this. lvUsers.Columns.Add("课程"); /*在表头添加一个列*/注:如果此时ListView控件的”VIew”属性不是”Details”还需要增加语句:this. lvUsers.View = View.Details;2).显示图片列表添加一个Listview控件及一个ImageList控件。

winform(C#)解决顶级窗体文本框部分选中、部分删除、部分文本内容替换问题

winform(C#)解决顶级窗体文本框部分选中、部分删除、部分文本内容替换问题
{
if (e.Modifiers == Keys.Control && e.KeyCode == Keys.A)
{
((TextBox)sender).SelectAll(); //全选功能
}
else
{
//解决顶级窗体部分选中事件删除或者替换内容问题
((TextBox)sender).HideSelection = true;
}ห้องสมุดไป่ตู้
//((TextBox)sender).HideSelection = true;
}
实际就这两句代码:
//这句解决顶级窗体中文本框不能选中部分文本内容问题,即设置子窗体无边框
rm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
这句解决顶级窗体中文本框不能选中部分文本内容问题即设置子窗体无边框
winform(C#)解决顶级窗体文本框部分选中、部分删除、部分文本内容替换问题
作者:ldx
日期:2014-05-16
备注:问题解决备忘记录
MDI容器嵌入子窗体方法:
第一步:
//这里是清空panel2中的控件的。
this.splitContainer1.Panel2.Controls.Clear();
rcglMain rm = new rcglMain();
//设置子窗体为非顶级窗体
rm.TopLevel = false;
rm.Parent = this.splitContainer1.Panel2;
//这句解决顶级窗体中文本框不能选中部分文本内容问题,即设置子窗体无边框
rm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;

C#WinForm窗体事件执行次序(较完整版)

C#WinForm窗体事件执行次序(较完整版)

C#WinForm窗体事件执行次序(较完整版)一、以下是网络上可搜索到的次序当Windows Form 应用程序启动时,会以下列顺序引发主要表单的启动事件:System.Windows.Forms.Control.HandleCreatedSystem.Windows.Forms.Control.BindingContextChangedSystem.Windows.Forms.Form.LoadSystem.Windows.Forms.Control.VisibleChangedSystem.Windows.Forms.Form.ActivatedSystem.Windows.Forms.Form.Shown当应用程序关闭时,会以下列顺序引发主要表单的关闭事件:System.Windows.Forms.Form.ClosingSystem.Windows.Forms.Form.FormClosingSystem.Windows.Forms.Form.ClosedSystem.Windows.Forms.Form.FormClosedSystem.Windows.Forms.Form.Deactivate二、以下是我测试的次序,全部protected override 这些事件,并且在其base.的前后分别处理一次,如下view sourceprint?1protected override void OnLoad(EventArgs e)2{3 textBox1.Text += "OnLoad1"+ "\r\n";4 base.OnLoad(e);5 textBox1.Text += "OnLoad2"+ "\r\n";6}OnClientSizeChanged1OnClientSizeChanged2OnClientSizeChanged1OnClientSizeChanged2// Loyout要多次执行OnLayout1OnLayout2OnHanleCreated1OnHanleCreated2OnInvalidated1OnInvalidated2// 注意这里的一点点变化OnCreateControl1OnLoad1OnLoad2OnCreateControl2//OnLayout1OnLayout2OnActivated1OnActivated2OnShown1OnShown2OnPain1OnPain2希望这个次序能给大家带来用处。

C#用WinForm实现在文本框无内容时显示浅色提示文本

C#用WinForm实现在文本框无内容时显示浅色提示文本

C#⽤WinForm实现在⽂本框⽆内容时显⽰浅⾊提⽰⽂本代码想要实现的功能是:在没有输⼊⽂本时,能够出现相应的提⽰;输⼊⽂本时,将提⽰⽂本隐藏掉。

实现原理:⼀、继承TextBox类,重写TextBox的三个事件(OnHandleCreated,OnTextChanged,OnGotFocus)⼆、不能直接在TextBoxChange中增加判断,容易频繁GDI绘图三、使⽤Timer进⾏延时GDI+,避免频繁绘图代码实现:先添加⼀个⽤户控件 将新建的UserControl继承TextBox public partial class UserControl1 : TextBox⽣成⼀个⽅法,实现当⽂本改变或焦点改变时判断⽂本长度,当Text.Length=0时,⽤GDI在TextBox上绘制显⽰需要的⽂本 int i = 0;private void ReDraw(TextBox textBox){Graphics g;g = Graphics.FromHwnd(textBox.Handle);if (textBox.Text.Length <= 0){Font font = new Font(this.Font.FontFamily, this.Font.Size, this.Font.Style);//设置字体,⼤⼩,粗细Brush sbrush = new SolidBrush(Color.Gray);//设置颜⾊g.DrawString("请输⼊⽂本......", font, sbrush, 1, 1);g.Save();i = 0;}else{if (i == 0){g.Clear(textBox.BackColor);Font font = new Font(this.Font.FontFamily, this.Font.Size, this.Font.Style);//设置字体,⼤⼩,粗细Brush sbrush = new SolidBrush(this.ForeColor);//设置颜⾊g.DrawString(Text, font, sbrush, 0, 0);g.Save();}}}之后我发现在触发OnTextChanged时直接在⽂本上⾯绘图,会导致界⾯⽆法更新到我需要显⽰的页⾯。

C# winform对话框用法大全

C# winform对话框用法大全对话框中我们常用了以下几种:1、文件对话框(FileDialog) 它又常用到两个:打开文件对话框(OpenFileDialog)保存文件对话(SaveFileDialog)2、字体对话框(FontDialog)3、颜色对话框(ColorDialog)4、打印预浏对话框(PrintPreviewDialog)5、页面设置(PrintDialog)6、打印对话框(PrintDialog)还有更多,有时间的网友可以看看MSDN。

下面我们一个个来介绍。

在介绍的过程中我用到了一个自己开发的类:File,主要是文件操作的。

文件对话框(FileDialog)一、打开文件对话框(OpenFileDialog)1、OpenFileDialog控件有以下基本属性InitialDirectory 对话框的初始目录Filter 要在对话框中显示的文件筛选器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)||*.*" FilterIndex 在对话框中选择的文件筛选器的索引,如果选第一项就设为1 RestoreDirectory 控制对话框在关闭之前是否恢复当前目录FileName 第一个在对话框中显示的文件或最后一个选取的文件Title 将显示在对话框标题栏中的字符AddExtension 是否自动添加默认扩展名CheckPathExists 在对话框返回之前,检查指定路径是否存在DefaultExt 默认扩展名DereferenceLinks 在从对话框返回前是否取消引用快捷方式ShowHelp 启用"帮助"按钮ValiDateNames 控制对话框检查文件名中是否不含有无效的字符或序列2、OpenFileDialog控件有以下常用事件FileOk 当用户点击"打开"或"保存"按钮时要处理的事件HelpRequest 当用户点击"帮助"按钮时要处理的事件3、OpenFileDialog的效果如下:可以用以下代码来实现上面这个对话框:private void openFileDialogBTN_Click(o b j e c t sender, System.EventArgs e){ OpenFileDialog openFileDialog=new OpenFileDialog();openFileDialog.InitialDirectory="c:\\";//注意这里写路径时要用c:\\而不是c:\ openFileDialog.Filter="文本文件|*.*|C#文件|*.cs|所有文件|*.*";openFileDialog.RestoreDirectory=true;openFileDialog.FilterIndex=1;if (openFileDialog.ShowDialog()==DialogResult.OK){fName=openFileDialog.FileName;File fileOpen=new File(fName);isFileHaveName=true;richTextBox1.Text=fileOpen.ReadFile();richTextBox1.AppendText("");}}其中有用到了File()这个类,是我在程序用来执行文件操作,自己写的,在最后附了这个类的源码。

第6章WinForm基础

Βιβλιοθήκη 6.1 WinForm简介
让IT教学更简单,让IT学习更有效
• 6.1.2 控件的常用属性与事件
– 在Control类中,除了定义属性,还定义了事件。根据用户的操 作引发相应的事件,开发人员可以根据不同的事件来编写具体的 处理方法,具体如下表所示。
事件 Load Click MouseEnter MouseLeave BackColorChanged FontChanged
让IT教学更简单,让IT学习更有效
第六章 WinForm基础
• WinForm文件结构 • WinForm控件的使用
目录
让IT教学更简单,让IT学习更有效
WinForm简介 WinForm常用控件
6.1 WinForm简介
让IT教学更简单,让IT学习更有效
• 6.1.1 WinForm项目的文件结构
6.1 WinForm简介
让IT教学更简单,让IT学习更有效
• 6.1.1 WinForm项目的文件结构
Form1.Designer.cs文件 用于在窗体类中自动生成控件的初始化代码,例如,将Button按钮拖到 Form1.cs窗体上,会在Form1. Designer.cs文件自动生成一段代码,具体如 下图所示。
1
public partial class Form1 : Form
2
{
3
public Form1()
4
{
5
InitializeComponent();
6
}
7
//鼠标进入按钮显示界面时,执行此方法
8
private void btnMe_MouseEnter(object sender, EventArgs e)

为C#自定义控件添加自定义事件

为C#自定义控件添加自定义事件展开全文用户控件的实现比较简单,直接从erControl继承。

public class UserControl1 : erControl为了便于测试我在上面添加了一个TextBox,并注册TextBox的TextChanged事件,this.textBox1.TextChanged += new System.EventHandler(this.textBox1_T extChanged);事件处理函数,private void textBox1_TextChanged(object sender, System.EventArgs e){MessageBox.Show(this.textBox1.Text);}这里演示如果控件中文本框的内容改变就会用MessageBox显示当前的文本框内容。

窗体中添加上面的用户控件,当我们改变textBox的文本时,可以看到跳出一个对话框,很简单吧。

下面来看看对控件添加属性。

这里定义一个私有变量。

private string customValue;添加访问他的属性public string CustomValue{get{return customValue;}set{customValue =value;}}在窗体中使用的时候像普通控件一样进行访问,userControl11.CustomValue = "用户控件自定义数据";通过事件可以传递消息到窗体上,在定义之前我们先来写一个简单的参数类。

public class TextChangeEventArgs : EventArgs{private string message;public TextChangeEventArgs(string message){this.message = message;}public string Message{get{return message;}}}定义委托为,public delegate void TextBoxChangedHandle(object sender, TextChangeEventArgs e);接下去在用户控件中添加事件,//定义事件public event TextBoxChangedHandle UserControlValueChanged;为了激发用户控件的新增事件,修改了一下代码,private void textBox1_TextChanged(object sender, System.EventArgs e){if(UserControlValueChanged != null)UserControlValueChanged(this,new TextChangeEventArgs(this.textBox1.Text));}好了,为了便于在Csdn上回答问题,把完整的代码贴了出来:using System;using System.Collections;using ponentModel;using System.Drawing;using System.Data;using System.Windows.Forms;namespace ZZ.WindowsApplication1{public class UserControl1 : erControl{private System.Windows.Forms.TextBox textBox1;private string customValue;private ponentModel.Containercomponents = null;public string CustomValue{get{return customValue;}set{customValue =value;}}//定义事件public event TextBoxChangedHandle UserControlValueChanged;public UserControl1(){InitializeComponent();}protected override void Dispose( bool disposing ){if( disposing ){if(components != null){components.Dispose();}}base.Dispose( disposing );}#region组件设计器生成的代码private void InitializeComponent(){this.textBox1 = new System.Windows.Forms.TextBox();this.SuspendLayout();this.textBox1.Location = new System.Drawing.Point(12, 36); = "textBox1";this.textBox1.TabIndex = 0;this.textBox1.Text = "textBox1";this.textBox1.TextChanged+= new System.EventHandler(this.textBox1_TextChanged);this.Controls.Add(this.textBox1); = "UserControl1";this.Size = new System.Drawing.Size(150, 92);this.ResumeLayout(false);}#endregionprivate void textBox1_TextChanged(object sender, System.EventArgs e){if(UserControlValueChanged != null)UserControlValueChanged(this,new TextChangeEventArgs(t his.textBox1.Text));}}//定义委托public delegate void TextBoxChangedHandle(object sender, TextChangeEventArgs e);public class TextChangeEventArgs : EventArgs{private string message;public TextChangeEventArgs(string message){this.message = message;}public string Message{get{return message;}}}}使用时要在窗体中注册上面的事件,比较简单都贴源代码了,using System;using System.Drawing;using System.Collections;using ponentModel;using System.Windows.Forms;using System.Data;namespace ZZ.WindowsApplication1{public class Form1 : System.Windows.Forms.Form{private erControl1 userControl11;private ponentModel.Container components = null;public Form1(){InitializeComponent();userControl11.CustomValue = "用户控件自定义数据";erControlValueChanged+= new TextBoxChangedHandle(userControl11_UserControlValu eChanged);}protected override void Dispose( bool disposing ){if( disposing ){if (components != null){components.Dispose();}}base.Dispose( disposing );}#region Windows 窗体设计器生成的代码private void InitializeComponent(){erControl11= new erControl1();this.SuspendLayout();erControl11.Location = new System.Drawing.Point(8, 8); = "userControl11";erControl11.Size = new System.Drawing.Size(150, 84);erControl11.TabIndex = 0;this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);this.ClientSize = new System.Drawing.Size(292, 193);this.Controls.Add(erControl11); = "Form1";this.Text = "Form1";this.ResumeLayout(false);}#endregion[STAThread]static void Main(){Application.Run(new Form1());}private void userControl11_UserControlValueChanged(objec t sender, TextChangeEventArgs e){MessageBox.Show("当前控件的值为:" + e.Message);}}}另外需要动态加载,就把控件添加在容器的Controls集合就行了,下面是在构造函数中添加控件,public Form1(){InitializeComponent();UserControl1 uc = new UserControl1();uc.CustomValue = "动态加载的用户控件";erControlValueChanged+= new TextBoxChangedHandle(userControl11_UserControlValu eChanged);this.Controls.Add(uc);}另外从中的工具箱中拖动用户控件到窗体上,如果是第一次需要编译一下项目。

WinForm常用窗体控件的使用

WinForm常用窗体控件的使用1. Label:Label是用于显示文本的控件,可以在窗体上添加文字或图像。

可以通过设置Text属性来显示文本内容,可以设置Font属性来改变字体样式,可以设置ForeColor和BackColor属性来改变前景色和背景色。

2. TextBox:TextBox是用于用户输入文本的控件。

可以通过设置Text属性来获取或设置文本框中的内容,可以设置ReadOnly属性来设置文本框是否只读。

3. Button:Button是用于触发事件的控件,用户点击按钮时会触发相应的事件处理程序。

可以通过设置Text属性来设置按钮上显示的文本,可以通过设置Click事件来添加按钮的点击事件处理程序。

4. CheckBox:CheckBox是用于选择一个或多个选项的控件,用户可以通过勾选或取消勾选来选择选项。

可以通过设置Checked属性来获取或设置CheckBox的选中状态,可以设置Text属性来设置CheckBox的显示文本。

5. RadioButton:RadioButton是用于从一组选项中选择一个选项的控件,用户只能选择其中一个选项。

可以通过设置Checked属性来获取或设置RadioButton的选中状态,可以设置Text属性来设置RadioButton的显示文本。

7. ListBox:ListBox是用于显示一个列表的控件,用户可以从列表中选择一个或多个选项。

可以通过设置Items属性来设置列表中的选项,可以通过设置SelectedItems属性来获取当前选中的选项。

8. PictureBox:PictureBox是用于显示图像的控件,可以显示各种图像格式的图片。

可以通过设置Image属性来设置PictureBox显示的图像,可以设置SizeMode属性来调整图像的显示方式。

9. ProgressBar:ProgressBar是用于显示操作进度的控件,可以显示操作的完成百分比。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

winform的textbox文本被选中时的事件WinForm的TextBox控件有两个事件与文本被选中有关:
1. TextBox.SelectionChanged事件:当文本的选中内容发生变化时
触发。

2. TextBox.TextChanged事件:当文本的内容发生变化时触发。

当选择文本时,会触发SelectionChanged事件。

在此事件中,可以
使用SelectedText属性获取选中的文本,使用SelectionStart和SelectionLength属性获取选中文本的起始位置和长度。

例如,以下代码
将选中的文本输出到控制台:
```。

private void textBox1_SelectionChanged(object sender, EventArgs e)。

Console.WriteLine(textBox1.SelectedText);。

}。

```。

注意,上述代码只在用户手动选择文本时才会触发
SelectionChanged事件,如果是以编程方式选择文本,不会触发该事件。

另外,需要注意的是,如果要在TextBox控件的TextChanged事件中
处理文本的选中情况,要先判断TextBox控件是否有焦点,如果没有焦点,则不处理文本的选中情况。

相关文档
最新文档