I'm having trouble formatting the datetime field in a gatagrid.

I am able to format the date using:
<asp:BoundColumn DataField="MyDateColumn" DataFormatString="{0:d}" ... />

But Since I'm using two tables, I'm creating the datagrid manually instead of using "GridView" from the Toolbox.

My Code:

Dim comm2 As SqlDataAdapter = New SqlDataAdapter("select T.taskID as 'ID', T.taskName as 'Task', T.taskDescription as 'Description', S.staffName as 'AssignedTo', T.assignedOn as 'AssignedOn', T.deadline as 'Deadline', T.priority as 'Priority' from temp_staff S, tasks T where S.staffRecNo = T.assignedTo and T.assignedBy = '" & staffRecNo & "' and T.deadline > '" & finalDate1 & "' and T.deadline < '" & finalDate2 & "' ", conn2)

        Dim ds2 As DataSet = New DataSet
        comm2.Fill(ds2, "test")

        dg1.Visible = True
        dg1.DataSource = ds2.Tables("test")


Please help

7 Years
Discussion Span
Last Post by P.K.Chaudhary


There is no problem using your datasource with two tables, you can still define grid in aspx anyway you can use this code example

Aspx file
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="GridFormat.aspx.cs" Inherits="GridFormat" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
    <form id="form1" runat="server">
        <asp:GridView ID="GView" runat="server">

cs file
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Globalization;

public partial class GridFormat : System.Web.UI.Page
    protected void Page_Load(object sender, EventArgs e)
        if (!IsPostBack)
            GView.DataSource = DataSource.GetData().Tables[0];
            GView.RowDataBound += new GridViewRowEventHandler(GView_RowDataBound);
            GView.EmptyDataText = "";

    void GView_RowDataBound(object sender, GridViewRowEventArgs e)
        DateTimeFormatInfo dtinfo = new CultureInfo("en-US", true).DateTimeFormat;
        if (e.Row.RowType == DataControlRowType.DataRow)
            if (!string.IsNullOrEmpty(e.Row.Cells[5].Text.Trim().Replace("&nbsp;","")))
                e.Row.Cells[5].Text = DateTime.Parse(e.Row.Cells[5].Text).ToString("MMM/dd/yyyy");
        //throw new Exception("The method or operation is not implemented.");
This article has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.