Hi there,
I prepared an example that you get you on the right track:
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
gridView.DataSource = GetData();
gridView.DataBind();
}
private System.Data.DataTable GetData()
{
System.Data.DataTable table =
new System.Data.DataTable();
table.Columns.Add("Id", typeof(int));
table.Columns.Add("ItemRecieved", typeof(DateTime));
table.Columns.Add("Difference", typeof(TimeSpan));
//t.ColumnChanged += new DataColumnChangeEventHandler(t_ColumnChanged);
table.ColumnChanged +=
new System.Data.DataColumnChangeEventHandler(table_Col umnChanged);
for (int i = 0; i < 10; i++)
{
System.Data.DataRow row = table.NewRow();
row[0] = i;
row[1] = DateTime.Now.AddDays((double)i);
table.Rows.Add(row);
}
return table;
}
private void table_ColumnChanged(object sender,
System.Data.DataColumnChangeEventArgs e)
{
if (e.Column.ColumnName == "ItemRecieved")
{
DateTime date = (DateTime)e.Row["ItemRecieved"];
e.Row["Difference"] = DateTime.Now - date;
}
}
</script>
<asp:GridView runat="server" ID="gridView"
AutoGenerateColumns="false">
<Columns>
<asp:BoundField DataField="Id" />
<asp:BoundField DataField="ItemRecieved" />
<asp:BoundField DataField="Difference"
DataFormatString="{0:-d.hh:mm:ss}" />
</Columns>
</asp:GridView>
Hope this helps
--
Milosz
"bb****@yahoo.com" wrote:
Hi,
I have a table which has a field ItemsReceived of type datetime. I
have a grid view which has two columns.
In first column i have to show the data from field ItemsReceived and
in second column I have to show
difference between Currenttime and date from ItemReceived. How can I
do that.
e'g
ItemRecieved Difference
6/13/2007 12:38am 1d 21h 45m
6/13/2007 3:54pm 1d 06h 10m
6/15/2007 12:26pm 34m
So the second coulmn displays the difference of current time minus
ItemRecieved. the format shouild be <mintues>m,
or<hours>h, <mintues>m, or <days>d.
How can I do that.
Thanks in advance