查询到的数据时:
1
2
3
4
5
6
7
8想在winform datagridview显示时为下面的样子:
1234
5678

解决方案 »

  1.   

    DataGridView设置数据显示格式
    //获取或设置DataGridView单元格文本内容的格式字符串
    Public string Format(get;set;)
    //显示绑定程序
    private void Frm_Main_Load(object sender, EventArgs e)
            {
                dgv_Message.DataSource = new List<Fruit>() {//绑定数据集合
                new Fruit(){Name="茄子",Price=30},
                new Fruit(){Name="辣椒",Price=40},
                new Fruit(){Name="白菜",Price=33},
                new Fruit(){Name="土豆",Price=31}};
                dgv_Message.Columns[0].Width = 200;//设置列宽度
                dgv_Message.Columns[1].Width = 170;//设置列宽度
                dgv_Message.Columns[1].DefaultCellStyle.Format = "c";//设置内容格式
            }
      

  2.   

    datagridview单列横向排列:(8列)
            DataTable Tabal(DataTable table)
            {
                string cm1 = null;
                string cm2 = null;
                string cm3 = null;
                string cm4 = null;
                string cm5 = null;
                string cm6 = null;
                string cm7 = null;
                string cm8 = null;
                DataTable dt = new DataTable();
                dt.Columns.Add("1");
                dt.Columns.Add("2");
                dt.Columns.Add("3");
                dt.Columns.Add("4");
                dt.Columns.Add("5");
                dt.Columns.Add("6");
                dt.Columns.Add("7");
                dt.Columns.Add("8");
                DataRow dr;
                int k = 0;
                for (int i = 0; i <= table.Rows.Count / 8.0; i++)
                {
                        if (i < Int32.Parse((table.Rows.Count / 8).ToString()))
                        {
                            cm1 = table.Rows[0 + k][0].ToString();
                            cm2 = table.Rows[1 + k][0].ToString();
                            cm3 = table.Rows[2 + k][0].ToString();
                            cm4 = table.Rows[3 + k][0].ToString();
                            cm5 = table.Rows[4 + k][0].ToString();
                            cm6 = table.Rows[5 + k][0].ToString();
                            cm7 = table.Rows[7 + k][0].ToString();
                            cm8 = table.Rows[8 + k][0].ToString();
                            dr = dt.NewRow();
                            object[] objs = { cm1, cm2, cm3, cm4, cm5, cm6,cm7,cm8 };
                            dr.ItemArray = objs;
                            dt.Rows.Add(dr);
                        }
                        else
                        {
                            if (table.Rows.Count % 8 == 1)
                            {
                                cm1 = table.Rows[0 + k - 1][0].ToString();
                                cm2 = "";
                                cm3 = "";
                                cm4 = "";
                                cm5 = "";
                                cm6 = "";
                                cm7 = "";
                                cm8 = "";
                                dr = dt.NewRow();
                                object[] objs = { cm1, cm2, cm3, cm4, cm5, cm6,cm7,cm8 };
                                dr.ItemArray = objs;
                                dt.Rows.Add(dr);
                            }
                            else if (table.Rows.Count % 8 == 2)
                            {
                                cm1 = table.Rows[0 + k][0].ToString();
                                cm2 = table.Rows[1 + k][0].ToString();
                                cm3 = "";
                                cm4 = "";
                                cm5 = "";
                                cm6 = "";
                                cm7 = "";
                                cm8 = "";
                                dr = dt.NewRow();
                                object[] objs = { cm1, cm2, cm3, cm4, cm5, cm6,cm7,cm8 };
                                dr.ItemArray = objs;
                                dt.Rows.Add(dr);
                            }
                            else if (table.Rows.Count % 8 == 3)
                            {
                                cm1 = table.Rows[0 + k][0].ToString();
                                cm2 = table.Rows[1 + k][0].ToString();
                                cm3 = table.Rows[2 + k][0].ToString();
                                cm4 = "";
                                cm5 = "";
                                cm6 = "";
                                cm7 = "";
                                cm8 = "";
                                dr = dt.NewRow();
                                object[] objs = { cm1, cm2, cm3, cm4, cm5, cm6,cm7,cm8 };
                                dr.ItemArray = objs;
                                dt.Rows.Add(dr);
                            }
                            else if (table.Rows.Count % 8 == 4)
                            {
                                cm1 = table.Rows[0 + k][0].ToString();
                                cm2 = table.Rows[1 + k][0].ToString();
                                cm3 = table.Rows[2 + k][0].ToString();
                                cm4 = table.Rows[3 + k][0].ToString();
                                cm5 = "";
                                cm6 = "";
                                cm7 = "";
                                cm8 = "";
                                dr = dt.NewRow();
                                object[] objs = { cm1, cm2, cm3, cm4, cm5, cm6,cm7,cm8 };
                                dr.ItemArray = objs;
                                dt.Rows.Add(dr);
                            }
                            else if (table.Rows.Count % 8 == 5)
                            {
                                cm1 = table.Rows[0 + k][0].ToString();
                                cm2 = table.Rows[1 + k][0].ToString();
                                cm3 = table.Rows[2 + k][0].ToString();
                                cm4 = table.Rows[3 + k][0].ToString();
                                cm5 = table.Rows[4 + k][0].ToString();
                                cm6 = "";
                                cm7 = "";
                                cm8 = "";
                                dr = dt.NewRow();
                                object[] objs = { cm1, cm2, cm3, cm4, cm5, cm6 ,cm7,cm8};
                                dr.ItemArray = objs;
                                dt.Rows.Add(dr);
                            }
                            else if (table.Rows.Count % 8 == 6)
                            {
                                cm1 = table.Rows[0 + k][0].ToString();
                                cm2 = table.Rows[1 + k][0].ToString();
                                cm3 = table.Rows[2 + k][0].ToString();
                                cm4 = table.Rows[3 + k][0].ToString();
                                cm5 = table.Rows[4 + k][0].ToString();
                                cm6 = table.Rows[5 + k][0].ToString();
                                cm7 = "";
                                cm8 = "";
                                dr = dt.NewRow();
                                object[] objs = { cm1, cm2, cm3, cm4, cm5, cm6, cm7, cm8 };
                                dr.ItemArray = objs;
                                dt.Rows.Add(dr);
                            }
                            else if (table.Rows.Count % 8 == 7)
                            {
                                cm1 = table.Rows[0 + k][0].ToString();
                                cm2 = table.Rows[1 + k][0].ToString();
                                cm3 = table.Rows[2 + k][0].ToString();
                                cm4 = table.Rows[3 + k][0].ToString();
                                cm5 = table.Rows[4 + k][0].ToString();
                                cm6 = table.Rows[5 + k][0].ToString();
                                cm7 = table.Rows[6 + k][0].ToString();
                                cm8 = "";
                                dr = dt.NewRow();
                                object[] objs = { cm1, cm2, cm3, cm4, cm5, cm6, cm7, cm8 };
                                dr.ItemArray = objs;
                                dt.Rows.Add(dr);
                            }
                    }                k = k+6;
                }
                return dt;
            }
    思路:把datatabel转成新的datatabel,然后再绑定到datagridview