最近遇到一个问题,就是把combobox里选择的项累加到这个combobox的文本框里,但是文本框默认只显示最近选取的项
怎样才能实现值的累加呢?

解决方案 »

  1.   

                string str = string.Empty;
                for (int i = 0; i < comboBox1.Items.Count; i++)
                {
                    str += comboBox1.Items[i].ToString();
                }
                comboBox1.Text = str;
      

  2.   

    可能是我没说清楚,我的意思是,假设combobox的选项是{"a","b","c"},
    那么如果我的选取序列是:a,c,b,a,a,b,c, 那么combobox.Text的值就是acbaabc,而不是最后选择的c
      

  3.   

    你可以拖个textbox控件,边框设置为none,然后覆盖到combobox上面,只留那个下拉的,然后
            public static string str;
            private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
            {
                str += comboBox1.Text;
                textBox2.Text = str;
            }
      

  4.   

    1、用一个数组记录最近选择的序列
    2、在combobox的选择项的触发事件里遍历此数组,将所有内容拼接成字符串赋给combobox的text。1L的代码是对的,满足lz的需求。
      

  5.   

    private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
          {
             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,这是怎么回事呢?
      

  6.   

    你不应该用 comboBox1.Text 储存数据的 ,也许你定义一个变量 在comboBox1的选择时间中去给这个变量累加comboBox1.Text的值 ,这样应该能满足你的需求吧
      

  7.   

    public string str1="";private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
      {
         MessageBox.Show(str1);
         str1+=comboBox1.text.tostring();
         MessageBox.Show(str1);
     
      }这样或许就能取到需要的值了
      

  8.   

    楼上的这样确实可以取到值,但是当 Combobox.SelectedIndexChanged 这个事件结束后,ComboBox的字符马上又被重置成刚选择的项了...
      

  9.   

    那和ComboBox的字符没关系了吧 不是已经取到值了吗 用的还是全局变量
      

  10.   

     this.ComboBox.Items.AddRange(new object[] { this.textbox.text });
     添加进去就行了么。
      

  11.   

    我就是想在Datagridview的DataGridViewComboBoxColumn列中选择符号(比如<, >, >=),然后生成对应的SQL语句,再返给数据库查询数据
      

  12.   

               StringBuilder sb = new StringBuilder();
                string aschar = "";
                for (int j = 0; j < ComboBox.Items.Count; j++)
                {                sb.Append(aschar + "\"" + ComboBox.Item[j].Text+ "\"");
                    aschar = ",";
                }
    将所有项拼成一个字符串,是这样吗!
               
      

  13.   

    错了,先在ComboBox的SelectedIndexChange事件下,将选择的项添加到List中,然后再循环遍历list,添加到StringBuilder中就行了
      

  14.   

    把字符串加起了不难,但是显示不是这样
    comboBox1_SelectedIndexChanged事件里 this.combox1.Text = str;//是没用的三种方法应该可以(没测试过)
    1:用一个线程不断更新(浪费资源)
    2: 用触发事件
    3:SendMessage() WinAPI 
      

  15.   

    楼主,你旁边放个TextBox,不是更直观吗?
      

  16.   

    我想知道,是什么属性或者事件控制着Combobox在事件完成后自动更新TextBox里的内容为选择项
      

  17.   

    先把图片上传到CSDN的空间相册,然后就能使用了。
    上面的方法说得差不多了,我就不多说了