C#控件之ComboBox控件使用
首先如果要给ComboBox控件输入要显示的内容,方法是点击控件会显示如下图所示:

然后点击”编辑项”,如下所示:

下面在这里输入控件要显示的内容,即可。
如果要让ComboBox控件设置默认显示项,代码如下所示:
//让ComboBox控件显示“明细计划”
comboBox1.Text = "明细计划";
comboBox1.SelectedIndex = 0;
或者
string[] array = { "Red", "Green", "White", "Blue", "Yellow" };
comboBox1.DataSource = array;
或者
for (int i = 0; i < 5; i++)
{
comboBox1.Items.Add(i + 1);
}
其中,赋值最关键的是SelectedIndex的赋值,而不是Text的赋值。
下面再打开ComboBox控件的属性下图位置,设置控件的下拉框是否可编辑等状态,如下图所示:

根据上图可以看到ComboBox的常用下拉格式DropDownStyle 有三种,分别是:
Simple是文本可编辑,下拉列表总可见;
DropDown是默认样式,文本可编辑,下拉需用户点击箭头;
DropDownList是文本不可编辑,下拉需用户点击箭头;
需要注意的是DropDownList形式直接使用comboBox1.Text = "值";形式来赋值结果会显示为空,而不会报任何错误或异常提示。
如果动态添加或者显示ComboBox下拉框的内容,首先需要在ComboBox属性的“字符串集合编辑器”中清空之前的内容,即如下所示:

或者使用Clear命令,代码如下所示:
this.comboBox1.Items.Clear();
动态添加ComboBox下拉框的内容的代码如下所示:
if (this.comboBox1.Items.Count > 0)
{
this.comboBox1.Items.Clear();
this.comboBox1.Items.AddRange(new object[] {
"明细计划",
"执行反馈"});
comboBox1.Text = "明细计划";
comboBox1.SelectedIndex = 0;
}
注意上述是通过this.comboBox1.Items.AddRange来实现项的添加,不过要注意,如果不清空,会出现重复添加的现象。
如果要获取控件选中项的内容,代码如下所示:
MessageBox.Show(comboBox1.SelectedItem.ToString());
如果要获取控件选中项的索引,代码如下所示:
MessageBox.Show(comboBox1.SelectedIndex.ToString());
如果要与数据库相连接并进行数据源的绑定,代码如下所示:
private void DoBindDataSource()
{
//构造数据源(或从数据库中查询)
DataTable ADt = new DataTable();
DataColumn ADC1 = new DataColumn("F_ID", typeof(int));
DataColumn ADC2 = new DataColumn("F_Name", typeof(string));
ADt.Columns.Add(ADC1);
ADt.Columns.Add(ADC2);
for (int i = 0; i < 3; i++)
{
DataRow ADR = ADt.NewRow();
ADR[0] = i+1;
ADR[1] = "Name_" + (i+1);
ADt.Rows.Add(ADR);
}
//进行绑定
comboBox1.DisplayMember = "F_Name"; //控件显示的列名
comboBox1.ValueMember = "F_ID"; //控件值的列名
comboBox1.DataSource = ADt;
}
C#控件之ComboBox控件使用的更多相关文章
- WPF进阶技巧和实战03-控件(3-文本控件及列表控件)
系列文章链接 WPF进阶技巧和实战01-小技巧 WPF进阶技巧和实战02-布局 WPF进阶技巧和实战03-控件(1-控件及内容控件) WPF进阶技巧和实战03-控件(2-特殊容器) WPF进阶技巧和实 ...
- ExtJS基础知识总结:自定义日历和ComboBox控件(二)
概述 1.ExtJS 5不支持日期选择框中只选择年月,为了满足ExtJs5可以实现选择年月的功能,查询网上资料,整理出来了相应的处理方式,最终实现的效果如下图: 2.ExtJS 控件丰富,如果需要实现 ...
- 加载ComboBox控件
/// <summary> /// 加载公司 /// </summary> /// <param name="cbbCompany">Combo ...
- C#中combobox 控件属性、事件、方法
一 .combobox 属性.事件.方法公共属性 名称 说明 AccessibilityObject 获取分配给该控件的 AccessibleObject. AccessibleDefaultActi ...
- .Net平台Winform两个ComboBox控件绑定同一个数据源
今天WINFROM编程遇到这么一个问题:是有关WINFORM中两个comboBox控件绑定同一个数据源的问题,在窗体的界面上有两个comboBox,我在Form1_Load中对他们做了数据绑定(具体代 ...
- WinForm编程时窗体设计器中ComboBox控件大小的设置
问题描述: 在VS中的窗体设计器中拖放一个ComboBox控件后想调整控件的大小.发现在控件上用鼠标只能拖动宽度(Width)无法拖动(Height). 解决过程: 1.控件无法拖动,就在属性窗口中设 ...
- Winform ComboBox控件高亮显示
//重绘下拉表单窗口,需要在窗口设计代码中加入下面这一句 this.cmdChannelName.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawF ...
- winform combobox控件绑定 分类: WinForm 2014-04-17 14:34 118人阅读 评论(0) 收藏
想要达到的效果:把数据库中的一列数据绑定到combobox控件中. 数据库表:T_Task//任务表 列名:Task_Name//名称 主键:Task_ID combobox控件名称:cbName 解 ...
- ComboBox控件绑定数据源
最近在研究机房收费系统的组合查询的方法时,看到了ComboBox控件可以进行数据绑定,我觉得这个功能真的很不错,可以给我省去很多的麻烦. 下面是我组合查询窗体界面 一.数据转换方法 现在我们开看一下我 ...
随机推荐
- Python操作MongoDB和Redis
1. python对mongo的常见CURD的操作 1.1 mongo简介 mongodb是一个nosql数据库,无结构化.和去中心化. 那为什么要用mongo来存呢? 1. 首先.数据关系复杂,没有 ...
- 2019.3.16数据结构考试(Problem 1. rotinv)(循环逆序对)
Problem 1. rotinvInput file: rotinv.inOutput file: rotinv.outTime limit: 2 secondsMemory limit: 256 ...
- PHP的openssl_encrypt方法的Java实现
<?php class OpenSSL3DES { /*密钥,22个字符*/ const KEY='09bd821d3e764f44899a9dc6'; /*向量,8个或10个字符*/ cons ...
- leetcode 230 二叉搜索树中第K小的元素
方法1:统计每个节点的子节点数目,当k>左子树节点数目时向左子树搜索,k=左子树节点数目时返回根节点,否则向右子树搜索. 方法2:递归中序遍历,这里开了O(n)空间的数组. class Solu ...
- 李航《统计学习方法》CH01
CH01 统计学方法概论 前言 章节目录 统计学习 监督学习 基本概念 问题的形式化 统计学习三要素 模型 策略 算法 模型评估与模型选择 训练误差与测试误差 过拟合与模型选择 正则化与交叉验证 正则 ...
- elasticSearch安装 Kibana安装 Sense安装
安装最新版本,安装6.*版本 先提示一个重要的事情,kibana新版本不需要安装Sense, 官方的是老版的Kibana才需要,我们现在用devTool http://localhost:5601/a ...
- 封装一个redis操作类来操作hash格式
最近项目要用redis,依然是基于tp3.2. 发现thinkphp3.2自带的缓存类并不好使用,就自己封装了一个 目前只支持hash格式,其他数据类型的操作后面用到的时候再补充 <?php / ...
- APP包打包签名步骤
开发混合app上架应用市场,需要进行应用签名,但是申请签名如果没搞过,会特别麻烦,所以我自自己总结了一下申请的步骤,在此记录一下 1.首先需要下载安装java环境即jdk, 2.配置环境变量 假设JD ...
- c++面试题一
c++面试题 1.是不是一个父类写了一个virtual函数,如果子类覆盖他的函数不加virtual, 也能实现多态? virtual 修饰符会被隐形继承的. private也被集成,只事派生类没有访问 ...
- 如何理解JavaScript中的原型和原型链
首先是一张关系图,避免抽象化理解时产生的困难 Function对象 函数对象是JavaScript学习中不可避免的一部分,而且这一部分相对重要且抽象 函数的创建方式有2种: 字面量创建 var foo ...