c#中怎么像COMBOX中添加值和名称。最好举个例子

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#中怎么像COMBOX中添加值和名称。最好举个例子相关的知识,希望对你有一定的参考价值。

需知comboBox里的项都是对象实例
新建一个类
/// <summary>
/// 选择项类,用于ComboBox或者ListBox添加项
/// </summary>
public class ListItem:System.Object

private string id = string.Empty;

public string Id

get return id;
set id = value;

private string name = string.Empty;

public string Name

get return name;
set name = value;


public ListItem(string sid, string sname)

this.Id = sid;
this.Name = sname;


public override string ToString()

return this.Name;



static void Main()

List<ListItem> items = new List<ListItem>();//添加项的集合
ListItem item = new ListItem("显示文字内容1","value值1");
ListItem item = new ListItem("显示文字内容2","value值2");
ListItem item = new ListItem("显示文字内容3","value值3");
items.Add(item);

comboBoxGroup.DisplayMember = "Name";
comboBoxGroup.ValueMember = "Id";
comboBoxGroup.DataSource = items;
this.comboBoxGroup.SelectedIndex = 0;
//下拉框事件
comboBoxGroup.SelectedIndexChanged += new EventHandler(comboBoxGroup_SelectedIndexChanged);
return 0;


搞定~
参考技术A comboBox1.Items.AddRange(new object[]
"自己需要添加的字符串"
);
参考技术B 你是想从数据库中获取数据后将这些数据绑定到COMBOX控件中还是怎么呢?追问

自定义的COMBOX

c#(winform)combobox手动添加的选项怎么获取value?

有一个combobox,怎么添加display的text和value的值?
比如:
先add一个“请选择”,他的值为0
又有一个数据库:
ID,名称
1,张三
2,李四
然后通过数据库循环add,显示对应数据库中的“名称”,值对应数据库中的ID

最后我选择“请选择”时,传值为0,选择其他的时,对应他们的值。怎么做呢?高手赐教!

是winform程序,不是web

以下方法实现获取ComboBox中被选中项的值:

(1)在Visual Studio中新建一个“Windows 窗体应用程序”项目

(2)在项目中添加一个类MyItem。这个类有两个用途:

    在ComboBox中显示

    用于检索被选中项的值

MyItem.cs代码

namespace WindowsFormsApplication1

    class MyItem
    
        public MyItem(string name, int value)
        
            Name = name;
            Value = value;
        
        public string Name  get; private set; 
        public int Value  get; private set; 
    

(3)在Form1上布置一个ComboBox、一个Label

(4)窗体代码 Form1.cs

using System;
using System.Collections.Generic;
using System.Windows.Forms;

namespace WindowsFormsApplication1

    public partial class Form1 : Form
    
        public Form1()
        
            InitializeComponent();
        

        private void Form1_Load(object sender, EventArgs e)
        
            // 清空lable1
            label1.Text = string.Empty;            
            
            // 列表集合将作为comboBox1的数据源
            List<MyItem> list = new List<MyItem>();
            list.Add(new MyItem("张三", 10));
            list.Add(new MyItem("李四", 20));
            list.Add(new MyItem("王五", 30));

            // 绑定
            comboBox1.DataSource = list;
            
            // 在comboBox1中显示MyItem的Name属性
            comboBox1.DisplayMember = "Name";
        
        
        // 获取被选中项的Value值
        private void comboBox1_SelectedIndexChanged(
                object sender, 
                EventArgs e)
        
            // 将被选中的项目强制转换为MyItem
            MyItem item = comboBox1.SelectedItem as MyItem;
            // 显示被选中项的值
            label1.Text = string.Format("Value = 0", item.Value);
        
    

(5)运行

程序启动后

改变comboBox1选择

参考技术A 先在外部定义一个类,比如MyItem,有两个属性TEXT,VALUE,重写ToString方法,返回Text的值。

在添加时,这样

MyItem item = new MyItem()
item.Text = "请选择";
item.Value = 0;

combobox.Items.Add(item);

item = new MyItem();

item.Text = "张三";
item.Value = 1;

combobox.Items.Add(item);

取值时,这样

MyItem item = combobox.SelectedItem as MyItem;

这样就可以通过item.Value得到你想要的值。
参考技术B combobox.datasource=dt;
combobox.displaymenber="名称";
combobox.valuemenber="ID";
dt是datatable,有ID和“名称”两个列
记忆中好像是这样滴。试试看本回答被提问者采纳

以上是关于c#中怎么像COMBOX中添加值和名称。最好举个例子的主要内容,如果未能解决你的问题,请参考以下文章

拜托了各位亲 么么哒 C#中绑定了控件 想往dataGridView中添加一行数据 怎么办???????????急

如何打开网业同时运行两个JS函数 给我举个例最好了谢谢!

C# combox 设置显示下拉菜单的第一项,如图。还有下拉选项的索引怎么回事,所索引为零是菜单的第一个选项

怎样将一个数据库中表数据复制到另一个数据库表中 举个例 sqlserver数据库

datagirdview中Combox如何获得选取值?

c#中我想在combox里绑定数据库中某字段的内容,并显示在combox的下拉框中,请问大家该怎么去弄呢?