完全に入力されている次のグリッドビューを定義しています。
<asp:GridView runat="server" ID="chargeDetail" AutoGenerateColumns="false" DataKeyNames="LineItemNumber,DetailId,IsParking" CellSpacing="0" CellPadding="6"
HorizontalAlign="Center" EnableViewState="true" ShowFooter="true">
<Columns>
<asp:BoundField DataField="StudentID" HeaderText="Student ID" ReadOnly="True" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="StudentName" HeaderText="Name" ReadOnly="true" />
<asp:BoundField DataField="CampusName" HeaderText="Campus" ReadOnly="true" />
<asp:TemplateField HeaderText="Description" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Label runat="server" ID="LineItemDetailLabel" Text='<%# IIf(Eval("Mandatory") = "1", Eval("LineItemDetail") + " *", Eval("LineItemDetail")) %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Item Cost" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
$<asp:Label runat="server" ID="LineItemCostLabel" Text='<%# Eval("LineItemCost") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Options" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Label runat="server" ID="lblOptionsAvailable"
Text='<%# IIf(Eval("AttributesAvailable") = "1", "Options will be available to select on the next screen.", "No options available.") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Pay Now" ItemStyle-HorizontalAlign="Center" FooterText="Total:">
<ItemTemplate>
<asp:Checkbox runat="server" ID="cbLineItemSelected" Checked='<%# IIf(Eval("Selected") = "1", "True", "False") %>'
Enabled='<%# IIf(Eval("Mandatory") = "1", "False", "True") %>' AutoPostBack="True" OnCheckedChanged="cbLineItemSelected_CheckedChanged" />
</ItemTemplate>
<FooterStyle Font-Bold="True" HorizontalAlign="Right" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Total">
<ItemTemplate>
$<asp:Label runat="server" ID="lblLineTotalCost" Text='<%# IIf(Eval("Selected") = "1", Eval("LineItemCost"), "0.00") %>' />
</ItemTemplate>
<FooterTemplate>
$<asp:Label runat="server" ID="lblTotal" />
</FooterTemplate>
<FooterStyle Font-Bold="True" />
</asp:TemplateField>
</Columns>
</asp:GridView>
HeaderText="Options" の TemplateField では、可変数のドロップダウン リストを作成できる必要があります。学校が請求する可能性のある料金ごとに、任意の数の属性を関連付けることができます。たとえば、T シャツの料金ではサイズと色を収集する必要があり、各属性には複数のオプションがある場合があります。
現在、ラベルが正しく入力されていることがわかりますが、2 つのドロップダウン リスト (この場合は [サイズ] と [色]) を作成できるようにする必要があります。この手数料は彼らの請求に含まれます。Pay Now 列のチェックボックスに OnCheckedChanged イベントがあり、現在、合計列とフッター行の全体合計を更新していることがわかります。
親が選択できるように、イベントがチェックされたときにドロップダウンに入力することが理想的です。また、選択内容を正しく記録できるように、これらのドロップダウンからポスト バックを処理する方法も知っておく必要があります。
私が見つけたものから、ドロップダウンリストを配置できるネストされたグリッドビューを作成する必要があると推測していますが、それを機能させる方法の正しい方向を示す例が見つかりません。コードビハインドからドロップダウンに簡単に入力でき、正しい方向を指していれば、親が入力したデータにアクセスできます。少しの方向性またはより簡単な方法が必要です。
前もって感謝します!