Winform ComboBox 问题 选择ComboBox 选项之后 控制Text属性不是选择的内容!例: 列表内有选项 "123123";选择该项之后 我想 Text属性显示的不是 "123123"; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以这样,你先判断先中的那个,把先中的那个text暂存在tag(text和它所在的idex)中,然后对你选中的那个写个事件(即显示你想要的),选中的换了时,把tag里面的值重新写回去 改变选中项的索引或ComboBox的项 是这样的 下拉列表选项里 我显示 "yyyy/MM/dd (2008/07/31)";其中 (2008/07/31) 只是 对前面部分的说明当我选择此项之后 我要在Text里显示yyyy/MM/dd 以为Text里还可以直接输入,用户可以自己输入想要的格式 private void comboBox1_SelectedIndexChanged(object sender, EventArgs e){ //搜索第一个(的位置并把(前的字符串设置为comboBox1的Text属性 comboBox1.Text = comboBox1.SelectedText.Substring(0, comboBox1.SelectedText.IndexOf('('));} 你可以把ComboBox绑定的数据源上,比如DataTable,这样可以设置DisplayMember 和ValueMember 。ComboBox1.DataSource = myDataSet ;//数据集ComboBox1.DisplayMember = "person.userId" ;//表名加字段名ComboBox1.ValueMember = "person.username" ;this.ComboBox1.DataSource = myDataTable;//数据表this.ComboBox1.DisplayMember = "Name";//字段名this.ComboBox1.ValueMember = "userId";//字段名获取当前位置的数据DataRowView rowView = (DataRowView)ComboBox1.SelectedItem; //定义一个带有Text/Value属性的类 public class ItemValueList { public string Text; public string Value; public override string ToString() { return this.Text; } }//.................................................//使用的时候直接赋值 ItemValueList tempitem = new ItemValueList(); tempitem.Text = “123123”; tempitem.Value = “abcabc”; Cbo.Items.Add(tempitem);//Cbo是一个ComboBox //................................................//取值的时候这样取foreach (ItemValueList item in Cbo.Items){ String Result=item.Value;} To: 5楼 自己试试看 不是这么简单的事了.To:7,8,9 理解错误了! 在Text显示里是值. 而选项里显示的是说明文本因为我最后取的值是ComboBox的 Text属性.下拉列表选项里 有一项: yyyy/MM/dd (2008/07/31)选择后 显示在框框内的是 yyyy/MM/dd 而不是由SelectedValue获得的值. 注意是在Text里的不过还是感谢各位的回答.分不会少你们的! :) 注意了 在选择之后comboBox.Text = "XXXX"; 是不可取的. private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { int index = comboBox1.Text.IndexOf('(') + 1; //第一个"(" int length = comboBox1.Text.Length - index - 1; //第二个“)” textBox1.Text = comboBox1.Text.Substring(index, length); }这样确实能完成你的需求啊你确定你的设计思路没走错么? 求一个sql语句怎么写 项目发布出错(急在线等谢谢) C#小号题。 关于System.Drawing.Point md5加密后乱码。。 Decimal 小数点? 有关上海.net 培训的问题 那位知道那里培训.net框架比较好? 关于如何只显示一个窗体得问题?!(请写出正确程序) 请问为何vb.net有的那个with语句为什么C#中没有。 二重启动问题 怎么实现动态传递参数列表调用存储过程并返回结果集值 C# 给Button添加一下拉菜单功能
下拉列表选项里 我显示 "yyyy/MM/dd (2008/07/31)";
其中 (2008/07/31) 只是 对前面部分的说明当我选择此项之后 我要在Text里显示yyyy/MM/dd 以为Text里还可以直接输入,用户可以自己输入想要的格式
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
//搜索第一个(的位置并把(前的字符串设置为comboBox1的Text属性
comboBox1.Text = comboBox1.SelectedText.Substring(0, comboBox1.SelectedText.IndexOf('('));
}
ComboBox1.DisplayMember = "person.userId" ;//表名加字段名
ComboBox1.ValueMember = "person.username" ;this.ComboBox1.DataSource = myDataTable;//数据表
this.ComboBox1.DisplayMember = "Name";//字段名
this.ComboBox1.ValueMember = "userId";//字段名
获取当前位置的数据
DataRowView rowView = (DataRowView)ComboBox1.SelectedItem;
public class ItemValueList
{
public string Text;
public string Value;
public override string ToString()
{
return this.Text;
}
}
//.................................................
//使用的时候直接赋值
ItemValueList tempitem = new ItemValueList();
tempitem.Text = “123123”;
tempitem.Value = “abcabc”;
Cbo.Items.Add(tempitem);//Cbo是一个ComboBox
//................................................
//取值的时候这样取
foreach (ItemValueList item in Cbo.Items){
String Result=item.Value;
}
理解错误了!
在Text显示里是值. 而选项里显示的是说明文本
因为我最后取的值是ComboBox的 Text属性.
下拉列表选项里 有一项: yyyy/MM/dd (2008/07/31)
选择后 显示在框框内的是 yyyy/MM/dd 而不是由SelectedValue获得的值. 注意是在Text里的
不过还是感谢各位的回答.分不会少你们的! :)
comboBox.Text = "XXXX"; 是不可取的.
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
int index = comboBox1.Text.IndexOf('(') + 1; //第一个"("
int length = comboBox1.Text.Length - index - 1; //第二个“)”
textBox1.Text = comboBox1.Text.Substring(index, length);
}这样确实能完成你的需求啊你确定你的设计思路没走错么?