如何将转换后的值从数据表绑定到gridview

时间:2010-04-03 09:59:01

标签: c# asp.net gridview datatable

如何将值绑定到gridview

我有一个数据表

DataTable dtBindGrid = new DataTable();

    dtBindGrid = serviceobj.SelectExamTimeTable(txtSchoolName.Text, txtBranchName.Text, txtClass.Text, txtExamName.Text);


    foreach (DataRow row in dtBindGrid.Rows)
    {

       strgetday=  row["Day"].ToString();
       strgetdate = row["Date"].ToString();

       DatedTime = Convert.ToDateTime(row["Time"].ToString());
      strgettime = DatedTime.ToString("t");

       strgetsubject = row["Subject"].ToString();
      strgetduration = row["Duration"].ToString();
      strgetsession = row["Session"].ToString();
      strgetminmark = row["MinMarks"].ToString();
      strgetmaxmark = row["MaxMarks"].ToString();

   //  dtBindGrid.Rows.Add(row);
    }



    GrdExamTimeTable.DataSource = dtBindGrid.DefaultView;
    GrdExamTimeTable.DataBind();

这个数据表会返回一些像我这样的值 星期,日期,时间,持续时间,主题,..

这里我获取字符串中的每个值,以便将时间转换为9.00am或9.00pm

DatedTime = Convert.ToDateTime(row [“Time”]。ToString());           strgettime = DatedTime.ToString(“t”);

....如何将这个转换后的值绑定到我的gridview。

1 个答案:

答案 0 :(得分:1)

一旦从服务中获取了额外的列,就可以向DataTable添加一个额外的列,然后在遍历行时,计算DatedTime并更新行。因为它在您的GridView的数据源中,您应该能够通过BoundColumn正常绑定它。

DataTable dtBindGrid = new DataTable();

dtBindGrid = serviceobj.SelectExamTimeTable(...);

dtBindGrid.Columns.Add(new DataColumn("DatedTime"));

foreach (DataRow row in dtBindGrid.Rows)
{
    DatedTime = Convert.ToDateTime(row["Time"].ToString());
    strgettime = DatedTime.ToString("t");

    row.BeginEdit();
    row.SetField("DatedTime", strgettime);
    row.EndEdit();

    row.AcceptChanges();
}

GrdExamTimeTable.DataSource = dtBindGrid.DefaultView;
GrdExamTimeTable.DataBind();