回答ありがとうございます。それは、DataGridをカスタマイズするように見えます。任意のASP.NET初心者のために、私がやっていることはここにあります
<asp:DataGrid ID="GridView1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:BoundColumn DataField="RuleID" Visible="False" HeaderText="RuleID"></asp:BoundColumn>
<asp:TemplateColumn HeaderText="Category">
<ItemTemplate>
<!-- in case we want to display an image -->
<asp:Literal ID="litImage" runat="server">
</asp:Literal>
<asp:DropDownList ID="categoryListDropdown" runat="server"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
これはデータグリッドを作成します。私たちは、その後、(私の場合のDataTable)のデータソースにバインドし、データグリッドのintialドロップダウンを移入する
foreach (DataGridItem item in this.GridView1.Items)
{
DropDownList categoryListDropdown = ((DropDownList)item.FindControl("categoryListDropdown"));
categoryListDropdown.Items.AddRange(listItems.ToArray());
}
のようなものを使用することができます。この場合、item.Cells [0] .textにアクセスしてRuleIDを取得することもできます。
自分のための注意:ASP.NETモデルは、コードビハインドファイルのすべてを行います。高いレベルでは、常にGridView1を反復処理できます。各行を取得する項目、およびitem.findControl( "ControlID")を使用して、「更新」ボタンを押した後など、各項目に格納されている値を照会します。