asp:CheckBoxコントロールをTableCellに動的に追加できますか?
質問
.NETアプリケーションでは、動的に作成されたasp:Tableの各行にチェックボックスを追加する必要があります。 行ごとにasp:CheckBoxを動的に作成し、それを何らかの方法でTableCellオブジェクト内に配置することで可能ですか? (その場合の方法は?)
または、asp:tableコントロールを、RepeaterコントロールやGridViewなどの別の何かで置き換える必要がありますか?
時間があまりないため、最も迅速な解決策を探しています。
事前に感謝します!
/ Ylva
解決
サーバー側で(Yossarianが言ったようにcsで)したくない。ページがリロードまたは更新されるたびに、それらのチェックボックスを再作成する必要があります。つまり、ロードするたびに新しいチェックボックスが必要になります。また、クライアント側にないためチェックボックスコントロール情報が失われるため、すべての更新情報ユーザーが行った(チェックボックスがオンになっている)は失われるため、jqueryを追加し、必要以上に複雑になり始めない限り、チェック対象を見つけることができます
Webページを使用している場合、asp:Gridview Webコントロールを使用し、コードビハインドでデータをテーブルにバインドするのが最善です:
Gridview.Datasource=//ex:data;
Gridview.Databind();
このページの例に示すように、こちら
ただし、MVCを使用している場合は、次のようにフォームのクライアントコードに追加します。
<% using (Html.BeginForm("Presentation", "Home")) %>
<% { %>
<table id="Table" class="color" width="100%" border="1">
<colgroup width="3%" ></colgroup>
<colgroup width="15%"></colgroup>
<colgroup width="20%"></colgroup>
<colgroup width="15%"></colgroup>
<colgroup width="47%"></colgroup>
<thead>
<tr class="dxgvHeader_Glass">
<th id="CheckBox" class="style1" ><input type="checkbox" class="selectall" id="selectall" name="CheckBox" /></th>
<th id="DateTime" runat="server"></th>
<th id="Description" runat="server"></th>
</tr>
</thead>
<tbody >
<%try
{ %>
<% foreach (var SamAuditLog in ViewData.Model)
{ %>
<tr>
<td class="style1" align="center"><%=Html.CheckBox(""+data.ID) %></td>
<td><%= data.DateTime%></td>
<td><%= data.Description%></td>
</tr>
<% } %>
<%} %>
</tbody>
他のヒント
aspx内:
<asp:Table id=T1 runat=server />
cs:
TableCell tc;
foreach(TableRow tr in T1.Rows)
{
tr.Cells.Add(tc = new TableCell());
((IParserAccessor)tc).AddParsedSubObject(new CheckBox());
}
所属していません StackOverflow