C# 如何在ComboBox输入文字改变时,触发事件?

摘要:
EventArgs是包含事件数据的类的基类,用于传递事件的细节。然后在combobox触发不同事件的时候都可以引用这个方法。1privatevoidcmbMarkNum_SelectedIndexChanged//选择下拉选项时2{3cmbMarkNumText=cmbChanged;4}5privatevoidcmbMarkNum_TextUpdate//combobox输入文字改变时6{7cmbMarkNumText=cmbChanged;8}9privatestringcmbChanged10{11stringrtxt;12ComboBoxcmb=sender;//强制吧sender转换为ComboBox类型赋值给cmb.13returnrtxt=cmb.Text;14}C#怎么实现ComboBox“只能选择,不能修改”的功能DropDownStyle属性设置为DropDownList.#Simple简单的下拉列表框。

一、了解C#中的预定义事件处理机制

在写代码前我们先来熟悉.net框架中和事件有关的类和委托,了解C#中预定义事件的处理。

EventArgs是包含事件数据的类的基类,用于传递事件的细节。

EventHandler是一个委托声明如下

public delegate void EventHandler( objectsender, EventArgs e)

注意这里的参数,前者是一个对象(其实这里传递的是对象的引用,如果是button1的click事件则sender就是button1),后面是包含事件数据的类的基类。

方案:

我们创建一个cmbChanged方法,传递sender。然后在combobox触发不同事件的时候都可以引用这个方法。

如下代码,不管哪个事件触发,我们将combobox选择展示的内容都赋给一个参数:cmbMarkNumText 。

1   private void cmbMarkNum_SelectedIndexChanged(objectsender, EventArgs e)//选择下拉选项时
2 {
3             cmbMarkNumText =cmbChanged(sender);
4 }
5         private void cmbMarkNum_TextUpdate(objectsender, EventArgs e)//combobox输入文字改变时
6 {
7             cmbMarkNumText =cmbChanged(sender);
8 }
9         private string cmbChanged(objectsender)
10 {
11             stringrtxt;
12             ComboBox cmb =(ComboBox)sender;//强制吧sender转换为ComboBox类型赋值给cmb.
13             return rtxt =cmb.Text;
14         }

C# 怎么实现ComboBox“只能选择,不能修改”的功能

DropDownStyle 属性设置为 DropDownList.
#Simple 简单的下拉列表框(始终显示列表)。
#DropDown 可以编辑,与有下拉列表。默认。
#DropDownList 只有下拉列表,不能编辑。

其他阅读:C#事件中sender的小用法

浅析C#的事件处理和自定义事件[object sender , EventArgs e]

Combobox赋值拓展:Combobox设置 DataSource 后,其 Text 会自动变为源中首项,而不再是原值。

免责声明:文章转载自《C# 如何在ComboBox输入文字改变时,触发事件?》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇WindowsAPI笔记(一)xcode下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

在C#中利用Nuget包使用SQLite数据库和Linq to SQLite

本来是学习在VB中使用SQLite数据库和Linq to SQLite,结果先学习到了在C#中使用SQLite数据库和Linq to SQLite的方法,写出来与大家共同学习。(不知道算不算不务正业) 1、建立或打开一个C#项目,如果是新建的项目则需要先保存一下,不然无法安装Nuget包。 2、安装Nuget的Linq to SQLite包,打开Nuget...

【转】文本框(Textbox)和下拉框(Combobox)自动联想功能的实现

看见一大侠介绍这种联想的效果,很棒! 怎样使自己程序中的文本框或下拉框具有像百度和Google那样的自动联想功能?微软的TextBox和Combobox控件为我们提供了简便方法。 首先需要学习TextBox(或Combobox)的两个属性,一个属性是AutoCompleteMode,指定控件中使用的自动完成功能的模式,有四种模式,分别是: None:禁用控...

在C++ 中 如何调用 C# 写的DLL(转载)

对于很多和我一样的老C++程序员来讲,如果不能与时俱进,不但会倍感失落,还会真的自绝于天下。比如C#有很多好的组件, 如NPOI ,如。。。,怎么在C++中也自如调用呢,这样不用去学习C#,不用换刀,也可以达到同样的目的。网上看了半天,找到的资料要么太老,要么不对,干脆自己调试一遍。下面把体会说一说。调试环境:visual studio 2010 .时间:...

第一次开发电商项目

先讲一下工作经历吧,09年上大四时就偷跑到北京做开发(moss),10年大学毕业后正式来北京。先做了近两年的网络教育平台开发,后来跳到一家物联网创业公司,做了两年的C# 仓储物流、手持机、RFID设备软件的开发。个人觉得再这样下去技术杂而不精今年3月份就跳到了现在的这家电商创业公司。 其实进入这家公司之前也曾经犹豫过,因为开的工资太低了,比普通行业C#开发...

js Jquery字符UrlEncode 编码 C#(asp.net)解码 Server HttpUtility 区别 cookies存中文

一、Js asp.net 交互Url编码解码 C#(asp.net)编码:HttpUtility.UrlEncode(url) Jquery解码:decodeURIComponent(url); Jquery编码:encodeURIComponent(url); C#(asp.net)解码:HttpUtility.UrlDecode 二、asp.net(S...

C#速成之二(Quick C#)

------------------- 数据类型 ------------------- 所有C#数据类型都派生自基类Object。这里有两类数据类型: 基本型/内置型 用户自定义型 下面一个C#内置类型列表: 类型字节数解释 byte 1 无符号字节型 sbyte 1 有符号字节型 short 2 有符号短字节型 ushort 2 无符号短字节型 in...