c#下拉列表框框combobox

使用数据绑定项可以进行与数据库等有关的操作。
在这里插入图片描述
点击编辑项:
在这里插入图片描述
初始状态运行:
在这里插入图片描述

输入:

在这里插入图片描述

在这里插入图片描述
点击运行:
在这里插入图片描述
运行后列表框默认显示的就是第一个。

更改程序:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
为什么是Count-1? 因为SelectedInedex从0开始计数,不是从1。
在这里插入图片描述

更改程序:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

cmb下拉框.SelectedItem的值是4
在这里插入图片描述
cmb下拉框.SelectedText是一个空字符串。
在这里插入图片描述
cmb下拉框.SelectedValue是null

在这里插入图片描述
这次选择 这里是文字0.0 ,再选中 文字0,点击button,测试断点。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
为什么会出现这种情况?
我们先学下Combobox的Text:
在这里插入图片描述
发现一样的操作情况下,Combobox的Text的值与SelectedItem相同。
它们的区别是:
Text属性获取的数据为控件显示的内容
SelectedItem 是获取当前选择的对象

如果Combobox里的数据都是文字,可以直接将SelectedItem值 ToString()下 。
顺便要把object改成string代码如下:

string selecttext = cmb下拉框.SelectedItem.ToString();

在这里插入图片描述
启动:
在这里插入图片描述
点击button,获取选择数据:
在这里插入图片描述
如何用代码给combobox添加列表选项?

一、

cmb下拉框.Items.Add("c#");

在这里插入图片描述
运行:
在这里插入图片描述
二、

 cmb下拉框.Items.AddRange(new string[] { "窗体","修炼","手册" });

在这里插入图片描述
在这里插入图片描述
三、

 string[] strs = new string[3];
            strs[0] = "欢迎";
            strs[1] = "大家";
            strs[2] = "收看";
            cmb下拉框.Items.AddRange(strs);

在这里插入图片描述
在这里插入图片描述

四、

   string[] strs1 = new string[] { "锅包肉", "加油" };
            cmb下拉框.Items.AddRange(strs1);

在这里插入图片描述
在这里插入图片描述

DropDownWidth属性 改变下拉框的宽度
在这里插入图片描述
将其值修改为500,效果为:

在这里插入图片描述
DropDownStyle属性
在这里插入图片描述
将其值改成Simple,效果为:
在程序未运行时:需要向下拉动,提前将下拉框的内容显示出来。
在这里插入图片描述
运行后:
在这里插入图片描述
不再是点击下拉显示列表,而是在表里直接选。

将其值改成DropDownList,效果为:
在这里插入图片描述
运行后:
在这里插入图片描述
里面选项都不可修改。(之前默认的DropDown可以修改)

若在列表框里添加信息:
点击button,会显示:
在这里插入图片描述
未将对象引用到实例
SelectedItem 是获取当前选择的对象,如果当前DropDownStyle 为 DropDown 时, 可以更改下拉框中的内容,那么将会引发使用SelectedItem的null异常,所以,为了避免用户修改,我们一般设置如果当前DropDownStyle为DropDownList
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

这是因为 cmb下拉框 的 Item 中没有 “ c#123 ”
在这里插入图片描述

如果需要做一个两个combobox联动的逻辑,首先获取 cmb1 选择的数据,然后设置 cmb2 选择的项目

建立第二个combobox:
在这里插入图片描述
设置 cmb2 的 Items :
在这里插入图片描述
SelectedIndexChanged事件
在这里插入图片描述
在这里插入图片描述
运行程序:
在这里插入图片描述
cmb下拉框选择第一个时,cmb2会自动选择自身的第一个;

在这里插入图片描述
cmb下拉框选择第二个时,cmb2会自动选择自身的第二个;

您可以使用以下步骤在C# WinForm中动态绑定ComboBox下拉列表: 1. 在您的WinForm中添加一个ComboBox控件。 2. 在您的代码中,使用ADO.NET连接到您的数据库。 3. 编写一个SQL查询语句来检索您需要添加到ComboBox下拉列表中的数据。 4. 使用DataAdapter和DataSet对象来执行查询并将结果保存在一个DataTable对象中。 5. 使用ComboBox控件的DataSource属性将DataTable对象与ComboBox控件绑定。 6. 使用ComboBox控件的DisplayMember属性将您希望显示在ComboBox下拉列表中的数据列的名称指定为字符串。 7. 使用ComboBox控件的ValueMember属性将您希望在选择ComboBox下拉列表中的项目时返回的值的数据列的名称指定为字符串。 以下是一个示例代码,可以将ComboBox下拉列表动态绑定到数据库中的数据: ```csharp using System.Data.SqlClient; // 创建数据库连接 SqlConnection connection = new SqlConnection("Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;"); // 创建SQL查询语句 string query = "SELECT ID, Name FROM MyTable"; // 创建DataAdapter和DataSet对象 SqlDataAdapter adapter = new SqlDataAdapter(query, connection); DataSet dataSet = new DataSet(); // 执行查询并将结果保存在DataTable对象中 adapter.Fill(dataSet, "MyTable"); // 将DataTable对象与ComboBox控件绑定 comboBox1.DataSource = dataSet.Tables["MyTable"]; // 指定ComboBox控件中显示的数据列的名称 comboBox1.DisplayMember = "Name"; // 指定在选择ComboBox下拉列表中的项目时返回的值的数据列的名称 comboBox1.ValueMember = "ID"; ``` 当您运行此代码时,ComboBox下拉列表将显示从数据库中检索到的所有项目的名称,并且选择任何项目时,ComboBox控件将返回该项目的ID作为值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值