受注を表示している注文システムと未処理の注文が表示されています。注文が受信され、チェックボックスがオンになっている場合、注文を受け取ったときにデータベースに日付を追加したいと思います。明らかに、私はチェックされている行に日付を追加したいだけです。前もって感謝します。チェックボックスがチェックされている場合、データベースに日付を追加
関連するHTMLを次のように
<asp:GridView ID="gvOpenOrders" runat="server" AutoGenerateColumns="False" Width="100%" CellPadding="4" ForeColor="#333333"
GridLines="None" DataKeyNames="PurchaseOrderID" AllowPaging="True" AllowSorting="True"
OnSorting="gvOpenOrders_Sorting" EnableViewState="true" OnPageIndexChanging="OnPageIndexChanging" PageSize="15" ViewStateMode="Enabled">
<AlternatingRowStyle BackColor="White" />
<Columns>
<asp:TemplateField HeaderText="Is Received" SortExpression="IsReceived">
<ItemTemplate>
<asp:CheckBox ID="chkRcvd" runat="server" AutoPostBack="true" Checked='<%# Bind("IsReceived") %>' Enabled='<%# Eval("IsReceived") = False %>' OnCheckedChanged="chkRcvd_CheckedChanged" />
</ItemTemplate>
</asp:TemplateField>
を更新受信ボタンがクリックされたときに、私は、現在のデータベースを更新しています、下記を参照してください:
Protected Sub btnUpdateReceived_Click(sender As Object, e As EventArgs) Handles btnUpdateReceived.Click
con.Open()
For Each row As GridViewRow In gvOpenOrders.Rows
Dim purchaseOrderID As Integer = Convert.ToInt32(gvOpenOrders.DataKeys(row.RowIndex).Values(0))
Dim isReceived As Boolean = TryCast(row.FindControl("chkRcvd"), CheckBox).Checked
cmd.CommandText = "usp_UpdatePurchaseOrder"
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Clear()
cmd.Parameters.AddWithValue("@OrderID", purchaseOrderID)
cmd.Parameters.AddWithValue("@IsReceived", isReceived)
cmd.ExecuteNonQuery()
Next
con.Close()
Response.Redirect(Request.Url.AbsoluteUri)
End Sub
を私はcheckbox_CheckedChangedイベントがあることを知っているが、私どのようにそれを使用するかわかりません。
これは私にチェックボックスが選択された日付を与えることで便利ですが、私はチェックされたチェックボックスのIDを取得しようとしているの両端にまだ少しです。上記の "For Each"セクションは、選択された行だけが必要な各行を実行しています。思考? – mooreev