datagridview的列有dgvCol1,dgvCol2,dgvCol3.
数据源是select dgvCol1,dgvCol2,dgvCol4,dgvCol5,dgvCol6 from tblMaser
在程序中用dgvCol4,dgvCol5,dgvCol6 作参数通过一个函数求到dgvCol3。
我该怎样实现datagridview的绑定,并且数据源是dgvCol1,dgvCol2,dgvCol3.并且是多条记录。

解决方案 »

  1.   

    将select dgvCol1,dgvCol2,dgvCol4,dgvCol5,dgvCol6 from tblMaser 查询出来的装在dataset(ds)里面然后for循环,在for循环里面用dgvCol4,dgvCol5,dgvCol6 作参数通过一个函数求到dgvCol3,一个一个写到datagridview上去
    datagridview1.rowcount = 1;
    for(int i=0;i<ds...)
    {
    //用dgvCol4,dgvCol5,dgvCol6 作参数通过一个函数求到dgvCol3
    datagridview1.rowcount = datagridview1.rowcount+1;
    datagridview1.Rows[i].Cells[0].Value = dgvCol1;
    datagridview1.Rows[i].Cells[1].Value = dgvCol2;
    datagridview1.Rows[i].Cells[2].Value = dgvCol3;}
      

  2.   


    手动建立DataTable和填充DataSet
    public void ReLoad()
    {
    DataSet ds = new DataSet();
    DataTable dt = new DataTable();
    DataColumn dcId = new DataColumn("Id", typeof(string));
    DataColumn dcName = new DataColumn("Name", typeof(string));
    DataColumn dcSex = new DataColumn("Sex", typeof(string));
    dt.Columns.AddRange(new DataColumn[] { dcId, dcName, dcSex });List<MySchoolModels.TeacherModel> teachers = new List<MySchoolModels.TeacherModel>();
    teachers = teacherBLL.GetTeacher();
    //dgvTeacherInfo.DataSource = teachers;//这里也可以直接用泛型集合teachers填充,DataSource就是数据集。但DataGridView中的列名的排列顺序默认为泛型基类中的属性的先后顺序int sum = teachers.Count;
    for (int i = 0; i < sum; i++)
    {
    DataRow dr = dt.NewRow();//在循环内声明行dr[0] = teachers[i].LoginId.ToString();
    dr[1] = teachers[i].Name.ToString();
    dr[2] = teachers[i].Sex.ToString();
    dt.Rows.Add(dr);//在循环内添加行
    }
    ds.Tables.Add(dt);
    dgvTeacherInfo.DataSource = ds.Tables[0];
    }
     
    参考
      

  3.   

    select dgvCol1,dgvCol2,进行dgvCol3计算 as dgvCol3 from tblMaser 页面直接绑定.
      

  4.   

    步骤如下:
    1.自己新建立一个dt,设定3列;
    2.通过数据源 循环 填充前两列内容dgvCol1,dgvCol2,第三列dgvCol3内容通过dgvCol4,dgvCol5,dgvCol6计算得到,也就是你说那个函数;
    3.绑定dgv到dt;具体编码希望楼主自己来