I am using gridview for the user to update rows. In a row, there sre
two columns, which need to be updated. When the gridview is to be
shown, the row should show the values from database. When user clicks
on edit link, should display the windows loginId in one column and in
second column, show the current datetime. When user clicks on update
link, should save these two column values to database as well as other
updated field values. I can't seem to find out how to set this up.
The Source doe is as follows:
<asp:GridView ID="gcEvidence" runat="server" AllowPaging="True"
AllowSorting="True"
AutoGenerateColumns="False"
BackColor="LightGoldenrodYellow" BorderColor="Tan"
BorderWidth="1px" CellPadding="2"
DataKeyNames="FrameworkEvidenceId"
DataSourceID="DSFrameworkEvidenceSelectUpdate"
ForeColor="Black" GridLines="None" EmptyDataText="Sorry, no
records found." Font-Italic="False" Font-Size="1.2em" Width="100%">
<FooterStyle BackColor="Tan" />
<Columns>
<asp:CommandField ShowEditButton="True" />
<asp:BoundField DataField="ActionMasterDisplayNo"
HeaderText="Action No."
SortExpression="ActionMasterDisplayNo"
ReadOnly="True" />
<asp:BoundField DataField="ActionMasterDesc"
HeaderText="Action" SortExpression="ActionMasterDesc" ReadOnly="True"
/>
<asp:BoundField DataField="FrameworkEvidenceId"
HeaderText="FrameworkEvidenceId"
InsertVisible="False" ReadOnly="True"
SortExpression="FrameworkEvidenceId" Visible="False" />
<asp:TemplateField HeaderText="Evidence Achieved"
SortExpression="FrameworkEvidenceAchieved">
<EditItemTemplate>
<asp:DropDownList ID="cboAchieved"
runat="server" SelectedValue='<%# Bind("FrameworkEvidenceAchieved")
%>'>
<asp:ListItem
Value="-">--Select--</asp:ListItem>
<asp:ListItem
Value="yes">Yes</asp:ListItem>
<asp:ListItem Value="no">No</asp:ListItem>
<asp:ListItem Value="partial
progress">Partial Progress</asp:ListItem>
<asp:ListItem Value="not applicable">Not
Applicable</asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%#
Bind("FrameworkEvidenceAchieved") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Evidence Ref"
SortExpression="FrameworkEvidenceRef">
<EditItemTemplate>
<asp:TextBox ID="txtEvidenceRef" runat="server"
MaxLength="150" Text='<%# Bind("FrameworkEvidenceRef")
%>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%#
Bind("FrameworkEvidenceRef") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Evidence Desc"
SortExpression="FrameworkEvidenceDesc">
<EditItemTemplate>
<asp:TextBox ID="txtEvidenceDesc"
runat="server" MaxLength="8000" Text='<%# Bind("FrameworkEvidenceDesc")
%>'
TextMode="MultiLine"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%#
Bind("FrameworkEvidenceDesc") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Updated By"
SortExpression="FrameworkEvidenceUpdatedBy">
<EditItemTemplate>
<asp:TextBox ID="txtUpdatedBy" runat="server"
MaxLength="10" Text='<%# GetLoggedInUserId() %>'
</asp:TextBox></EditItemTemplate>
<ItemTemplate> <asp:Label
ID="Label5" runat="server" Text='<%# Bind("FrameworkEvidenceUpdatedBy")
%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Date"
SortExpression="FrameworkEvidenceUpdatedDate">
<EditItemTemplate>
<asp:TextBox ID="txtDate" runat="server"
ReadOnly="True" Text='<%#
getCurrentDateTime(Eval("FrameworkEvidenceUpdatedD ate"))
%>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label4" runat="server" Text='<%#
Bind("FrameworkEvidenceUpdatedDate") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<SelectedRowStyle BackColor="DarkSlateBlue"
ForeColor="GhostWhite" />
<PagerStyle BackColor="PaleGoldenrod"
ForeColor="DarkSlateBlue" HorizontalAlign="Center" />
<HeaderStyle BackColor="Tan" Font-Bold="True" />
<AlternatingRowStyle BackColor="PaleGoldenrod" />
<EditRowStyle BackColor="#8080FF" BorderColor="Blue"
Font-Size="1em" />
</asp:GridView>
<asp:SqlDataSource ID="DSFrameworkEvidenceSelectUpdate"
runat="server" ConnectionString="<%$ ConnectionStrings:EqualitiesDbConn
%>"
SelectCommand="ProcFrameworkEvidenceSelectALLByDep tId"
SelectCommandType="StoredProcedure"
UpdateCommand="ProcFrameworkEvidenceUpdate"
UpdateCommandType="StoredProcedure">
<UpdateParameters>
<asp:Parameter Name="FrameworkEvidenceId" />
<asp:Parameter Name="FrameworkEvidenceDesc" />
<asp:Parameter Name="FrameworkEvidenceRef" />
<asp:Parameter Name="FrameworkEvidenceAchieved" />
<asp:Parameter Name="FrameworkEvidenceUpdatedBy" />
<asp:Parameter Name="FrameworkEvidenceUpdatedDate" />
</UpdateParameters>
<SelectParameters>
<asp:Parameter DefaultValue="3" Name="dept_id"
Type="Int64" />
</SelectParameters>
</asp:SqlDataSource>