<asp:ListView ID="TasksList" runat="server" DataKeyNames="AnnualProgramTasksId"
DataSourceID="TasksListSqlDataSource">
...
<LayoutTemplate>...</LayoutTemplate>
...
<ItemTemplate>
<tr>
<td>
<asp:HiddenField ID="AnnualProgramTasksId" runat="server" Value='<%#Bind("AnnualProgramTasksId")%>'/>
<asp:Checkbox ID="CompletedCheckbox" runat="server" AutoPostBack="True" OnCheckedChanged="CompletedCheckboxChange" Checked='<%#IIf(Eval("TaskCompleted"), "True", "False")%>' />
</td>
<td><%#Eval("TaskDesc")%></td>
<td></td>
</tr>
</ItemTemplate>
...
<asp:sqldatasource ID="TasklistSqlDataSource...
SelectCommand="Select AnnualProgramTasksId, TaskDesc, TaskCompleted FROM AnnualPreogramTasks"
</asp:sqldatasource>
...
Код сзади:
Protected Sub CompletedCheckboxChange( ByVal sender As Object, ByVal e As EventArgs )
Dim Completed As CheckBox = TryCast( sender, CheckBox )
response.write( Completed.Checked ) ' This works. I'll use this to determine what to enter in the database for the 'Checked' column
' **How can i get the value of AnnualProgramTasksId?**
' (I'll use this to construct a sql statement to update the appropriate database row.
End Sub