Thanks for your help Walaa
My Solution, for others to consider ->
Add 2 asp:Labels:
<form id="frmProgress" runat="server">
<asp:Label runat="server" ID="lblEditDate" Text="Set in Page Load and used by Update Parameters" Visible="false"></asp:Label>
<asp:Label runat="server" ID="lblEditBy" Text="Set in Page Load and used by Update Parameters" Visible="false"></asp:Label> ...
Add <UpdateParameters> to datasource, binding values to these controls:
... <llblgenpro:LLBLGenProDataSource ID="dsLine" runat="server" DataContainerType="EntityCollection"
EnablePaging="True" EntityCollectionTypeName="Fluor.PipeUtils.DAL.CollectionClasses.LineCollection, Fluor.PipeUtils.DAL">
<SelectParameters>
<asp:ControlParameter ControlID="ddlModelFilter" DefaultValue="--Pick--" Name="ModelIndexNo"
PropertyName="SelectedValue" />
</SelectParameters>
<%-- Set the auto fields when updating. --%>
<UpdateParameters>
<asp:ControlParameter ControlID="lblEditBy" Name="LastEditBy" Type="String" PropertyName="Text" />
<asp:ControlParameter ControlID="lblEditDate" Name="LastEditDate" PropertyName="Text" />
</UpdateParameters>
</llblgenpro:LLBLGenProDataSource>...
Update the value of these controls at page load. (so to be fussy - my edit date/time is actually page load time - but it's good enough for me)
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
' Need to set these as they are referenced by the gridview <updateParameters> section.
lblEditDate.Text = Now()
lblEditBy.Text = HttpContext.Current.User.Identity.Name
End Sub
(Name="LastEditBy" referenced in ControlParameter is the name of the column in the underlying table)
Now, I don't have to write any code in order to set default values.
Can anyone improve on this? Any comments welcome!