행 추가 단추를 클릭 할 때마다 행을 추가하는 동적 테이블을 만들고 있습니다. 단추를 프로그래밍 방식으로 만들고 테이블 머리글에 추가하고 있습니다. 그 아래에 동일한 행에 행 단추도 삭제됩니다.ASP.NET 프로그래밍 방식으로 이벤트 단추 추가
버튼을 클릭해도 이벤트가 호출되지 않는데 문제가 있습니다. 버튼을 올바르게 만들고 있습니까? 그렇지 않다면 어떻게해야합니까? 내가 그렇다면 문제가 뭔지 알아?
지역 Add_Table_Header TableHeaderCell thcOne = new TableHeaderCell();
TableHeaderCell thcTwo = new TableHeaderCell();
TableHeaderCell thcThree = new TableHeaderCell();
TableHeaderCell thcrFour = new TableHeaderCell();
TableHeaderCell thcFive = new TableHeaderCell();
TableCell thcRowAction = new TableCell(); //THIS IS THE COLUMN WITH THE
//ADD BUTTON
thcOne.Text = "Who";
thcTwo.Text = "Date Started";
thcThree.Text = "Date Ended";
thcrFour.Text = "Causes?";
thcFive.Text = "Result";
//HERE IS WHERE I CREATE AND ADD THE BUTTON
Button addRowButton = new Button();
addRowButton.Text = "Add Row";
addRowButton.Click += new EventHandler(this.AddNewRow_Click);
thcRowAction.Controls.Add(addRowButton);
TableHeaderRow headerRow = new TableHeaderRow();
headerRow.Cells.Add(thcOne);
headerRow.Cells.Add(thcTwo);
headerRow.Cells.Add(thcThree);
headerRow.Cells.Add(thcrFour);
headerRow.Cells.Add(thcFive);
headerRow.Cells.Add(thcRowAction);
table.Rows.Add(headerRow);
#endregion
protected void AddNewRow_Click(object sender, EventArgs e)
{
if (ViewState["RowsCount"] != null)
{
numOfRows = Convert.ToInt32(ViewState["RowsCount"]);
GenerateTable(numOfRows);
}
}
다시 한번 버튼이 나타납니다,하지만 올바른 이벤트 메서드를 입력하지 않습니다.
TableHeaderCell thcOne = new TableHeaderCell();
TableHeaderCell thcTwo = new TableHeaderCell();
TableHeaderCell thcThree = new TableHeaderCell();
TableHeaderCell thcrFour = new TableHeaderCell();
TableHeaderCell thcFive = new TableHeaderCell();
TableCell thcRowAction = new TableCell(); //THIS IS THE COLUMN WITH THE
//ADD BUTTON
thcOne.Text = "Who";
thcTwo.Text = "Date Started";
thcThree.Text = "Date Ended";
thcrFour.Text = "Causes?";
thcFive.Text = "Result";
//HERE IS WHERE I CREATE AND ADD THE BUTTON
Button addRowButton = new Button();
addRowButton.Text = "Add Row";
addRowButton.Click += new EventHandler(this.AddNewRow_Click);
thcRowAction.Controls.Add(addRowButton);
TableHeaderRow headerRow = new TableHeaderRow();
headerRow.Cells.Add(thcOne);
headerRow.Cells.Add(thcTwo);
headerRow.Cells.Add(thcThree);
headerRow.Cells.Add(thcrFour);
headerRow.Cells.Add(thcFive);
headerRow.Cells.Add(thcRowAction);
table.Rows.Add(headerRow);
#endregion
protected void AddNewRow_Click(object sender, EventArgs e)
{
if (ViewState["RowsCount"] != null)
{
numOfRows = Convert.ToInt32(ViewState["RowsCount"]);
GenerateTable(numOfRows);
}
}
<asp:Button ID="BTNAdd" runat="server" Text="Add New Row" OnClick="AddNewRow_Click" />
이벤트가 등록하고 완벽하게 잘 작동합니다 : 그런데 당신의 도움과 시간 :
에 대한 덕분에 나는 선언적 등을 수행 할 때.
새 정보 : 나는 삭제 단추가 나타나고, 어떤 유형의 이벤트도 등록하지 않았지만 그것을 클릭하면 행 추가 단추와 똑같은 기능을 수행 할 수 있습니다. 마스터 페이지 또는 다른 소스가 버튼을 먼저 또는 기본값으로 알려줍니다.
감사합니다 :)