最近遇到一个问题,就是把combobox里选择的项累加到这个combobox的文本框里,但是文本框默认只显示最近选取的项
怎样才能实现值的累加呢?
怎样才能实现值的累加呢?
解决方案 »
- c# 重载函数的问题
- 初学编程,求教高手改错
- 尝试读取或写入受保护的内存。这通常指示其他内存已损坏
- 简单的问题,动态生成控件后对控件属性修改的疑问??
- vs2005刚刚装好,新建了一个window程序,但是打不开窗体设计器
- 用Video播放视频的问题
- 能否将C#编写的windwos应用程序编译为native code以提高运行速度
- 调试问题?
- visual studio c# 出现 there is not enough memoty for java virtual machine
- 大家做WINFORM的时候是把控件分开来,还是直接做到FORM上,我感觉把全部的控件贴到FORM上面好像不符合OO的思路
- C# 程序 登录系统
- windows7 64位 oracle 64位 odac 64位 如何连接!
for (int i = 0; i < comboBox1.Items.Count; i++)
{
str += comboBox1.Items[i].ToString();
}
comboBox1.Text = str;
那么如果我的选取序列是:a,c,b,a,a,b,c, 那么combobox.Text的值就是acbaabc,而不是最后选择的c
public static string str;
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
str += comboBox1.Text;
textBox2.Text = str;
}
2、在combobox的选择项的触发事件里遍历此数组,将所有内容拼接成字符串赋给combobox的text。1L的代码是对的,满足lz的需求。
{
MessageBox.Show(this.comboBox1.Text);
this.comboBox1.Text += this.comboBox1.SelectedItem.ToString();
MessageBox.Show(this.comboBox1.Text);
}上面是我自己写的代码,假如我点选的项是"a",当我点选完之后, Text的值是a,执行了累加语句后Text也正常累加了变成aa,但是当SelectedIndexChanged事件结束后,Text值又变成了a,这是怎么回事呢?
{
MessageBox.Show(str1);
str1+=comboBox1.text.tostring();
MessageBox.Show(str1);
}这样或许就能取到需要的值了
添加进去就行了么。
string aschar = "";
for (int j = 0; j < ComboBox.Items.Count; j++)
{ sb.Append(aschar + "\"" + ComboBox.Item[j].Text+ "\"");
aschar = ",";
}
将所有项拼成一个字符串,是这样吗!
comboBox1_SelectedIndexChanged事件里 this.combox1.Text = str;//是没用的三种方法应该可以(没测试过)
1:用一个线程不断更新(浪费资源)
2: 用触发事件
3:SendMessage() WinAPI
上面的方法说得差不多了,我就不多说了