ボタンをクリックしたときに、新しいセルとTextBoxを追加したいとします。しかし、現在の行のボタンをクリックすると、そのセルとTextBoxが削除され、新しいものが追加されます。ボタンがクリックされたときにテーブルにテキストボックスを追加する方法
マークアップ:
<form id="form1" runat="server">
<div>
<asp:Panel ID="pnlForTextBoxes" runat="server">
</asp:Panel>
<asp:DropDownList ID="ddlNumbers" runat="server" Height="16px" Width="143px">
<asp:ListItem>1</asp:ListItem>
<asp:ListItem>2</asp:ListItem>
<asp:ListItem>3</asp:ListItem>
<asp:ListItem>4</asp:ListItem>
<asp:ListItem>5</asp:ListItem>
</asp:DropDownList>`enter code here`
<asp:Table ID="myActualTable" runat="server">
</asp:Table>
<br />
<asp:Button ID="cmdAddTextBox" runat="server" Text="Add" OnClick="cmdAddTextBox_Click" />
</div>
</form>
コード:
protected void cmdAddTextBox_Click(object sender, EventArgs e)
{
TableRow myRow = new TableRow();
myRow.ID = "row" + ddlNumbers.SelectedValue.ToString();
TableCell myCell = new TableCell();
myCell.ID = "cell" + ddlNumbers.SelectedValue.ToString();
TextBox myTextBox = new TextBox();
myTextBox.ID = "txt" + ddlNumbers.SelectedValue.ToString();
myTextBox.Text = "TextBox number " + ddlNumbers.SelectedValue.ToString();
myCell.Controls.Add(myTextBox);
myRow.Cells.Add(myCell);
myActualTable.Rows.Add(myRow);
myTextBox.Dispose();
myCell.Dispose();
myRow.Dispose();
}
[DataGrid](http://msdn.microsoft.com/en-us/library/system.web.ui)のようなコントロールでカスタムビルドテーブルを置き換えると、あなたのライブをもっと簡単にすることができると思います.webcontrols.datagrid)または[GridView](http://msdn.microsoft.com/en-us/library/4w7ya1ts)を参照してください。これは、行の追加、削除、編集のためのすぐに使用できる機能を提供します。 – Filburt