Dim dt As New DataTable() Dim dc1 As New DataColumn("str1") Dim dc2 As New DataColumn("str2") Dim dr As DataRow dt.Columns.Add(dc1) dt.Columns.Add(dc2) dr = dt.NewRow dr(0) = 3 dr(1) = "张三" dt.Rows.Add(dr) . . . dr = dt.NewRow dr(0) = 3 dr(1) = "张三" dt.Rows.Add(dr) ComboBox.DataSource = dt ComboBox.DisplayMember = "str1" ComboBox.ValueMember = "str2" 换成C#,调试下就好了
期待简单的。
Dim dc1 As New DataColumn("str1")
Dim dc2 As New DataColumn("str2") Dim dr As DataRow dt.Columns.Add(dc1)
dt.Columns.Add(dc2)
dr = dt.NewRow
dr(0) = 3
dr(1) = "张三"
dt.Rows.Add(dr)
.
.
.
dr = dt.NewRow
dr(0) = 3
dr(1) = "张三"
dt.Rows.Add(dr) ComboBox.DataSource = dt
ComboBox.DisplayMember = "str1"
ComboBox.ValueMember = "str2"
换成C#,调试下就好了
不过还是谢谢楼上有C#的就好咯
dt.Columns.Add("value", Type.GetType("System.String"));
dt.Columns.Add("text", Type.GetType("System.String"));
//添加数据
DataRow dr = dt.NewRow();
dr.BeginEdit();
dr["value"] = "3";
dr["text"] = "张三";
dr.EndEdit();
dt.Rows.Add(dr); ComboBox cmbbx = new ComboBox();
cmbbx.DataSource = dt;
cmbbx.DisplayMember = "text";//显示的值
cmbbx.ValueMember = "value";//实际值
DataTable dt = new DataTable();
public ComboBox()
{
InitializeComponent();
} private void ComboBox_Load(object sender, EventArgs e)
{
DataColumn dc1 = new DataColumn();
dc1.ColumnName = "Id";
dc1.DataType=typeof(int);
dt.Columns.Add(dc1); DataColumn dc2 = new DataColumn();
dc2.ColumnName = "Name";
dc2.DataType=typeof(string);
dt.Columns.Add(dc2); DataRow dr1 = dt.NewRow();
DataRow dr2 = dt.NewRow();
DataRow dr3 = dt.NewRow();
DataRow dr4 = dt.NewRow();
DataRow dr5 = dt.NewRow();
dataRow(dr1,"张三",3);
dataRow(dr2,"李四",4);
dataRow(dr3, "王二",2);
dataRow(dr4,"马五",5);
dataRow(dr5,"陈六",6);
//ds.Tables.Add(dt); comboBox1.DataSource = dt;
comboBox1.ValueMember = "Id";
comboBox1.DisplayMember = "Name";
}
private void dataRow(DataRow dr,string name,int id)
{
dr[0] = id;
dr[1] = name;
dt.Rows.Add(dr);
}
2.多的话,就用数据库,或者xml等,支持楼上的同志们的方法。
string str2 = "张三,李四,王二,马五,陈六";
string[] values = str1.Split(new char[] { ',' });
string[] Display = str2.Split(new char[] { ',' });
DataTable dt = new DataTable();
dt.Columns.Add("Values", typeof(string));
dt.Columns.Add("Display", typeof(string));
//认为两个Array都是一样的长度.
for (int i = 0; i < values.Length; i++)
dt.Rows.Add(values[i], Display[i]);
comboBox1.DataSource = dt;
comboBox1.DisplayMember = "Display";
comboBox1.ValueMember = "Values";