ユーザーがドロップダウンからいくつかの選択を行った後、コードビハインドに入力される1つの境界フィールドを持つグリッドビューがあります。これは問題なく入力されていますが、TemplateFieldsにチェックボックスが付いた他の2つの列もあります。これらは、このグリッドビューに表示されることはありません。これがaspxです:
<asp:UpdatePanel ID="clientServerUpdatePanel" runat="server">
<ContentTemplate>
<asp:GridView ID="clientServerGridView" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:BoundField HeaderText="Operating System" DataField="OS" />
<asp:TemplateField HeaderText="Client" >
<asp:ItemTemplate>
<asp:CheckBox runat="server" ID="clientCheckBox" Checked="false" />
</asp:ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Server">
<asp:ItemTemplate>
<asp:Checkbox runat="server" ID="serverCheckBox" Checked="false" />
</asp:ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
クリックイベントハンドラーに配置される関連するコードビハインドは次のとおりです。
Dim dt As DataTable = New DataTable()
dt.Columns.Add(New DataColumn("OS", System.Type.GetType("System.String")))
For Each OSItem As ListItem In Me.defaultOSesListBox.Items
If Not OSItem.Selected Then
Continue For
End If
Dim dr As DataRow = dt.NewRow()
Dim os As String = OSItem.Text
dr("OS") = os
dt.Rows.Add(dr)
Next
Me.clientServerGridView.DataSource = dt
Me.clientServerGridView.DataBind()
誰かが私の問題の根本が何であるかについての考えを持っていますか?
編集:チェックボックスをラップする必要がありました
<ItemTemplate>
それ以外の
<asp:ItemTemplate>