Maybe I'm not understanding what your trying to do but hopefully this helps…
I have not done with a objectdatasource before, but I do this all the time with a SQL data source. If you’re storing the ModifiedOn date in the database, as part of our data source update command, have it update the ModifiedDate with the current date. On each update of the gridview record, it should pull back the updated record with the newly modified ModifiedDate as well.
Below is a rough example of how to do this with a SQL data source and TSQL commands that I know works. One key here is the UpdateComand and the code of "sdtLastMod = GetDate() ", which keeps the modified date correct. On each update, the UPDATE query takes care of updating the last modified date, and after the update is complete, the grid reloads its values which contain the correct last modified date.
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT intRID2, intRID, strRelatedValue, sdtLastMod FROM tblRelated WHERE intRID = @intRID" DeleteCommand="DELETE FROM tblRelated WHERE (intRID2 = @intRID2)" UpdateCommand="UPDATE tblRelated SET intRID = @intRID , strRelatedValue = @strRelatedValue, sdtLastMod = GetDate() WHERE (intRID2 = @intRID2)">
<SelectParameters>
<asp:QueryStringParameter DefaultValue="-1" Name="intRID" QueryStringField="ID" Type="Int32" />
</SelectParameters>
<DeleteParameters>
<asp:Parameter Name="intRID2" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="intRID" />
<asp:Parameter Name="strRelatedValue" />
<asp:Parameter Name="intRID2" />
</UpdateParameters>
</asp:SqlDataSource>
<asp:GridView ID="GridView2" runat="server" SelectedIndex="0" AutoGenerateColumns="False" DataKeyNames="intRID2" AutoGenerateEditButton="true" DataSourceID="SqlDataSource1" AutoGenerateDeleteButton="True">
<Columns>
<asp:BoundField DataField="intRID2" HeaderText="intRID2" SortExpression="intRID2" />
<asp:BoundField DataField="intRID" HeaderText="intRID" SortExpression="intRID" />
<asp:BoundField DataField="sdtLastMod" HeaderText="sdtLastMod" SortExpression="sdtLastMod" />
<asp:BoundField DataField="strRelatedValue" HeaderText="strRelatedValue" SortExpression="strRelatedValue" />
</Columns>
</asp:GridView>