c#请问如何在winform的datagridVIEW的列中,点击的时候显示一个combobox控件的下拉数据,选择一条下拉数据后,选中的数据显示到datagridview的列表中???并且在列表的尾部,进行对列的统计数据显示?如一列输入2, 第二列输入3.该列对应的尾部,统计显示总计:5个;;;;;;;

解决方案 »

  1.   

    插入combobox是用:DataGridViewComboBoxColumn Column1 = new DataGridViewComboBoxColumn();
      

  2.   

    datagridview添加combobox控件:http://blog.csdn.net/luochengbang/archive/2008/09/17/2937194.aspx至于在列表尾部进行对列的数据统计,可以用dataGridView1.Rows[1].Cells[1].Value.ToString()的方法得到对应单元格的数据,并对数据进行判断处理。
      

  3.   

    还有一些datagridview的基本操作:http://heisetoufa.javaeye.com/blog/405317
    可能对楼主有用。
      

  4.   

    二楼的链接应该是这篇
    http://blog.csdn.net/shaojie0726/archive/2009/09/29/4615548.aspx.
      

  5.   

    private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
      {
      if (e.Control is DataGridViewComboBoxEditingControl)
      {
      (e.Control as DataGridViewComboBoxEditingControl).SelectedIndexChanged += new EventHandler(DataGridViewComboBoxEditingControl_SelectedIndexChanged);
      }
      }
      private void DataGridViewComboBoxEditingControl_SelectedIndexChanged(object sender, EventArgs e)
      {
      }
      

  6.   

    单纯的 DataGridViewComboBoxColumn 是实现不能楼主要的功能的...
    毕业该列的所有数据都必须是在 ComboBox 的集合中...
    楼主可考虑将统计显示的放在另一个 DataGridView 里,在前一个 DataGridView 的事件里绑定另一个 DataGridView ...
      

  7.   


    public DataGridViewComboBoxColumn NoDataDropDown(string headname, string displyname, string valuemember, DataTable dt, DataGridView dw)
    {
        int index = 0;
        DataGridViewComboBoxColumn column = new DataGridViewComboBoxColumn();
        DataGridViewComboBoxDisplayStyle comboBox = DataGridViewComboBoxDisplayStyle.ComboBox;
        comboBox = DataGridViewComboBoxDisplayStyle.Nothing;
        bool flag = false;
        foreach (DataGridViewColumn column2 in dw.Columns)
        {
            if (column2.Name.ToUpper() == headname.ToUpper())
            {
                flag = true;
                headname = column2.Name;
                break;
            }
        }
        if (flag)
        {
            index = dw.Columns[headname].Index;
            dw.Columns.Remove(headname);
        }
        column.DisplayIndex = index;
        column.Name = headname;
        column.DataPropertyName = headname;
        column.DataSource = dt;
        column.DisplayMember = displyname;
        column.ValueMember = valuemember;
        column.DisplayStyle = comboBox;
        return column;