解决方案 »

  1.   

    如果是winform下的,用datagridview显示数据
      

  2.   

    就只有datagridview比较合适吗?
    我也有想过用datagridview来做,就是将组名设置为列名,可以做到大致的功能,只是因为组的数量不定,这样看起来不大好看,另外可能编辑不方便。
    还有其它想法吗,或是用datagridview怎么做的更好?
      

  3.   

    用wpf  自定义listbox就可以了
      

  4.   

    用datagridview显示数据,列名用重绘。
      

  5.   

    datagridview绑定数据,展示样式均可重绘
      

  6.   

    3楼说的WPF可以比较好的实现你要的功能,如果非要用winfrom,可能自定义控件做会比较好一些
      

  7.   


     private void Form1_Load(object sender, EventArgs e)
            {
                for (int i = 0; i < 5; i++)
                {
                    AddDgv(new DataGridView(),i);
                }
            }        private void AddDgv(DataGridView dgv ,int n)
            {//大概这个样子,细节都可以修改
                this.MiddleContainer.Controls.Add(dgv);
                //dgv.Left = 10;
                
                dgv.Dock = DockStyle.Left;
                dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
                dgv.Width = 150;
                dgv.Height = MiddleContainer.Height;
                dgv.BackgroundColor = Color.White;
                dgv.Columns.Add("第一列","name1");
                dgv.Columns.Add("第二列", "name2");
                for (int i = 0; i < 10;i++ ) dgv.Rows.Add("张三", "李四");
                dgv.AllowUserToAddRows = false;
                dgv.RowHeadersVisible = false;
                //dgv.ColumnHeadersVisible = false;
                Label lab = new Label();
                lab.Text = "        第"+n.ToString()+"组";
                dgv.Controls.Add(lab);
                lab.Height = 20;
                lab.Width = 150;
                lab.BackColor = Color.Coral;
            }
      

  8.   

    我本来觉得可能要用新控件才能做好,但是按你这种用很熟悉的DataGridView就能大致达到想要的目的了。