控件combox

article/2025/9/23 9:14:58

目录(?)[+]

  1. 一 combox显示
  2. 二 取数据
  3. 三实例
    1. 来自CODE的代码片 TestControlerscs

一. combox显示

    首先combox有两个属性来存储数据:DisplayMember(显示成员),ValueMember(值成员) ,DisplayMember是我们在combox界面上看到的,ValueMember是隐藏的数据。一般来说我们只需要设置DisplayMember属性的值即可。
  1. 循环赋值 ,通过combox.Items.Add方法
  2. 绑定数据,给combox.DataSource绑定数据源
两者的区别在于:
循环赋值代码没有绑定数据代码简练;
循环赋值方法combox默认没有选择值即 selectedIndex=-1,而绑定数据方式则默认是第一个数据。

注意:combox.DataSource数据源不一定,只要是集合数据即可(该集合类型必须继承自IList或IListSource)

二. 取数据

1. SelectedValue,SelectedItem,SelectedText,Text区别
combox取得值类型很多,基本有以上几种,这里讲下他们的区别,及用法
SelectedValue:选中的数据值;即ValueMember属性中存储的值。
SelectedItem:combox当前选中项的值;(如果设置了displayMember,与valueMember的值,则会显示着两个的集合)
SelectedText:鼠标选中的combox中显示值
Text:当前combox的值;可用来取combox的值。

注意:前三个值都是当combox选中某个值才有效,如果combox没有选中任何一个值,但是在程序中取得这些值为null,使用会报异常错误。(未实例化)而Text则是为空("")。

三.实例

1. UI:

2. 说明
groupbox1:给combox赋值。分别采用循环,绑定数据库获取值赋给DataTable,绑定Dictionary值类型
groupbox2:取combox值,这里选用的第三个combox DT绑定。分别查看combox各个属性的值
注意:这里只写取这些属性值,是为了区分他们的不同

3. 代码:
  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
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
             
using MySql.Data.MySqlClient;
private void Form1_Load(object sender, EventArgs e)
{
//循环绑定
SetCmbWithCycle();
//绑定数据库
SetCmbWithBindingDB();
//绑定dictionary
SetCmbWithDT();
}
/// <summary>
/// 动态获取值
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void timer1_Tick(object sender, EventArgs e)
{
if (cmbDT.SelectedIndex < 0)
{
lblError.Text = "combox没有选择值!";
return;
}
//获取combox值
GetComboxData();
}
/// <summary>
/// 通过循环来赋值
/// </summary>
private void SetCmbWithCycle()
{
DataTable dt = GetDbData();
for (int i = 0; i < dt.Rows.Count; i++)
{
cmbItem.Items.Add(dt.Rows[i]["Name"]);
}
}
/// <summary>
/// 通过绑定方式来赋值
/// </summary>
private void SetCmbWithBindingDB()
{
DataTable dt = GetDbData();
cmbBind.DataSource = dt;
cmbBind.DisplayMember = "Name";
}
/// <summary>
/// 通过dictiona绑定
/// </summary>
private void SetCmbWithDT()
{
Dictionary<int, string> dt = new Dictionary<int, string>();
dt.Add(1, "A");
dt.Add(2, "B");
BindingSource bs = new BindingSource();
bs.DataSource = dt;
//Dictionary类型数据不可直接绑定到控件上
cmbDT.DataSource = bs;
cmbDT.ValueMember = "Key";
cmbDT.DisplayMember = "Value";
}
/// <summary>
/// 获取combox的属性值
/// </summary>
private void GetComboxData()
{
lblSelVal.Text = cmbDT.SelectedValue.ToString();
lblSelItem.Text = cmbDT.SelectedItem.ToString();
lblSelTxt.Text = cmbDT.SelectedText;
lblTxt.Text = cmbDT.Text;
}
/// <summary>
/// 数据库中获取数据
/// </summary>
/// <returns></returns>
private DataTable GetDbData()
{
string connStr = @"Server=localhost;Database=stu;Uid=root;Pwd=123456";
MySqlConnection conn = new MySqlConnection(connStr);
string sql = @"Select *from user";
if (conn.State == ConnectionState.Open)
{
conn.Close();
}
conn.Open();
MySqlCommand cmb = new MySqlCommand(sql, conn);
MySqlDataAdapter da = new MySqlDataAdapter(cmb);
DataTable dt = new DataTable();
da.Fill(dt);
conn.Close();
return dt;
}

http://chatgpt.dhexx.cn/article/WRL0JKDx.shtml

相关文章

wpf 自定义combox控件

关键步骤 1、新建usercontrol使用基本的控件进行设计 2、依赖属性的定义&#xff0c;目的&#xff1a;外部调用时候能够使用属性进行控件样式的控制 例如 Width"200" DisplayMemberPath"Name" SelectedItem"{Binding SelectedItem,ModeTwoWay}&…

EasyUI中Combox组合框的简单使用

场景 效果 用法 从带有预定义结构的 <select> 元素创建组合框&#xff08;combobox&#xff09;。 <select id"cc" class"easyui-combobox" name"dept" style"width:200px;"><option value"aa">aitem1…

easyUI combox

1 组合框&#xff08;combobox&#xff09; 显示一个可编辑的文本框和下拉列表&#xff0c;用户可以从下拉列表中选择一个或多个值. 可以直接输入文本到列表的顶部&#xff0c;或者从列表中选择一个或多个现成的值。 创建的方式: 1 从带有预定义结构的 <select> 元素创…

下拉框combox绑定后该如何获取combox当前显示的值

在下小白,找了一个下午。具体情况就是&#xff1a;我已经绑定了combox的值。值是我利用sql语句从数据库里取出来的。然后就是用combox动态绑定去获取值嘛&#xff1a;如图 然后就是下面的结果。值已经进入到combox框里了。很开心。 但是却不知道用哪个方法获取其文本框里的值&a…

C#中ComBox赋值取值

效果图&#xff1a; 1.新建实体类&#xff1a; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace hsBankZjdzManager.Entity {/// <summary>/// 下拉框赋值模板/// </summary>p…

c#美化Combox

1.C#美化Combox的源码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; using System.Drawing.Drawing2D;namespace BeautifyC…

VS combox控件的简单用法

一、conbox最最简单的用法 效果是这样的&#xff1a; 代码&#xff1a; private void Form1_Load(object sender, EventArgs e){comboBox1.Items.Add("平方差");comboBox1.Items.Add("归一化的平方差");comboBox1.Items.Add("相关性匹配");comb…

控件之combox

一. combox显示 首先combox有两个属性来存储数据&#xff1a;DisplayMember(显示成员),ValueMember(值成员) &#xff0c;DisplayMember是我们在combox界面上看到的&#xff0c;ValueMember是隐藏的数据。一般来说我们只需要设置DisplayMember属性的值即可。 循环赋值 &#xf…

COMBOX的基本使用

COMBOX的基本使用 (2015-07-21 23:10:27) 转载▼ 标签&#xff1a; it 分类&#xff1a; MFC 组合框其实就是把一个 编辑框 和一个列表框组合到了一起&#xff0c;分为三种&#xff1a;简易&#xff08;Simple&#xff09;组合框、下拉式&#xff08;Dropdown&#xff09;…

linux搭建tomcat集群

工作需要&#xff0c;要使用tomcat集群做负载均衡。准备把自己搭建的过程记录下来&#xff0c;供日后参考。 由于是自己练手&#xff0c;用的是自己电脑虚拟出来的3台虚拟机&#xff0c;系统版本CentOs6.5.话不多说&#xff0c;直接开始 装JDK于配置环境变量过程略过。。 把…

Nginx部署三台Tomcat集群详细操作步骤

详细步骤请看教程视频&#xff1a;视频地址 以下是安装教程和关键代码等资料&#xff1a; 讲解图例&#xff1a; 一、环境安装 JDK1.8安装教程&#xff1a;教程地址 Tomcat8.5获取链接&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/18XqIcrehbdcs_s9lCG_xrA 提取…

Tomcat集群Session会话复制方案

Tomcat集群Session会话复制方案 一、配置Tomcat二、项目配置与启动配置 一、配置Tomcat 1.进入tomcat官网查找相应tomcat版本的文档&#xff0c;版本不同配置信息也就相应不同。 图中标识2就是tomcat默认的群集配置 2.打开tomcat/config/server.xml配置文件。 在 <Engin…

Tomcat 集群

多种方式实现 Tomcat 集群。 1 概述 1.1 集群能带来什么 提高服务的性能&#xff0c;例如计算处理能力、并发能力等&#xff0c;以及实现服务的高可用性。提供项目架构的横向扩展能力&#xff0c;增加集群中的机器就能提高集群的性能。提升对静态文件的处理性能。利用 Web 服务…

Tomcat集群同步原理

#概述 随着C/S架构中&#xff0c;客户端对服务器的访问量及访问次数逐渐增多&#xff0c;单个服务器已经不能够满足客户端的请求了。于是现在大多数服务器都做成了集群的形式。而服务器集群会有一个很大问题&#xff0c;就是同步问题。比如&#xff0c;现在我对一个有四台计算机…

零基础搭建Tomcat集群(超详细)

&#x1f497;推荐阅读文章&#x1f497; &#x1f338;JavaSE系列&#x1f338;&#x1f449;1️⃣《JavaSE系列教程》&#x1f33a;MySQL系列&#x1f33a;&#x1f449;2️⃣《MySQL系列教程》&#x1f340;JavaWeb系列&#x1f340;&#x1f449;3️⃣《JavaWeb系列教程》…

Nginx 搭建Tomcat集群

目录 一、架构图 二、配置上游服务器 三、配置集群服务 四、加权负载均衡 五、配置最大连接数 六、启动慢增长 一、架构图 二、配置上游服务器 打开config/nginx.conf 添加配置如下&#xff1a; 三、配置集群服务 刷新nginx后&#xff0c;集群配置完毕&#xff01; 四…

Tomcat集群及Session共享

Tomcat集群 由于单台Tomcat的承载能力是有限的&#xff0c;当我们的业务系统用户量比较大&#xff0c;请求压力比较大时&#xff0c;单台Tomcat是扛不住的&#xff0c;这个时候&#xff0c;就需要搭建Tomcat的集群&#xff0c;而目前比较流行的做法就是通过Nginx 来实现Tomcat…

Windows中部署Tomcat集群

1.新建文件夹tomcats 准备3台tomcat 测试&#xff1a; 错点&#xff1a; 使用的是7无缓存版本&#xff0c;但是扔显示8。解决&#xff1a;将环境变量中的catalina删掉。 ~~删除线格式~~ 2.修改配置文件 第一台8005 第二台8006 第三台8007 此位置第一台8091&#xff…

Nginx+Tomcat集群环境搭建

Tomcat集群能带来什么&#xff1f; 提高服务的性能、并发能力、以及高可用性提高项目架构的横向扩展能力 提高服务的性能 实际公司线上生产环境都会选择一台机器部署一个tomcat&#xff0c;多台机器完成集群&#xff0c;毕竟一台机器部署多个tomcat还是有一些共享瓶颈的&…

tomcat集群

tomcat集群 什么是集群 集群是一组协同工作的服务实体&#xff0c;用以提供比单一服务实体更具扩展性与可用性的服务平台。在客户端看来&#xff0c;一个集群就象是一个服务实体&#xff0c;但 事实上集群由一组服务实体组成。 集群的特性 与单一服务实体相比较&#xff0c;…