在C#代码隐藏中呈现按钮
我正试图在代码隐藏中构建一个表。我所拥有的是这样的:在C#代码隐藏中呈现按钮,c#,asp.net,code-behind,C#,Asp.net,Code Behind,我正试图在代码隐藏中构建一个表。我所拥有的是这样的: Content += "<tr>"; Content += "<td>" + dt.Rows[i]["Provision"].ToString() + "</td>"; Content += "<td>" + dt.Rows[i]["MarkForReview"].ToString() + "</td>"; Content += "<td>" + dt.Rows[i]["
Content += "<tr>";
Content += "<td>" + dt.Rows[i]["Provision"].ToString() + "</td>";
Content += "<td>" + dt.Rows[i]["MarkForReview"].ToString() + "</td>";
Content += "<td>" + dt.Rows[i]["IssueType"].ToString() + "</td>";
Content += "<td>" + dt.Rows[i]["Resolution"].ToString() + "</td>";
Content += "<td>" + dt.Rows[i]["Feedback"].ToString() + "</td>";
Content += "<td><input type=\"button\" ID=\"btnEdit\" runat=\"server\" OnClick=\"btnEdit_OnClick\" Text=\"Edit\" /></td>";
Content += "</tr>";
<td><input type="button" ID="btnEdit" runat="server" OnClick="btnEdit_OnClick" Text="Edit" /></td>
此外,按钮渲染时没有文本。这只是一个灰色的小按钮
知道我做错了什么吗?可以将按钮渲染为文字。但是,不会将任何事件附加到它,因为它不在控制树中 换句话说,当按钮发回服务器时,不会触发click事件 以下是一个例子-
protected void Page_Init(object sender, EventArgs e)
{
var btnEdit = new Button {ID = "btnEdit", Text = "Edit" };
btnEdit.Click += btnEdit_OnClick;
PlaceHolder1.Controls.Add(btnEdit);
}
ASPX
您可以将按钮渲染为文字。但是,不会将任何事件附加到它,因为它不在控制树中 换句话说,当按钮发回服务器时,不会触发click事件 以下是一个例子-
protected void Page_Init(object sender, EventArgs e)
{
var btnEdit = new Button {ID = "btnEdit", Text = "Edit" };
btnEdit.Click += btnEdit_OnClick;
PlaceHolder1.Controls.Add(btnEdit);
}
ASPX
这就是我查看源代码时显示的内容。事件是否已注册?在您的
OnLoad
方法或类似方法中,您需要订阅事件,否则发布者将被忽略。不确定代码中的所有内容,但使用当前可用的,Content.OnClick+=btnEdit\u OnClick
或类似的内容。这就是查看源代码时显示的内容。事件是否已注册?在您的OnLoad
方法或类似方法中,您需要订阅事件,否则发布者将被忽略。不确定代码中的所有内容,但使用当前可用的,Content.OnClick+=btnEdit\u OnClick
或类似的内容。
<%@ Page Language="C#" ... %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<body>
<form id="form1" runat="server">
<asp:PlaceHolder runat="server" ID="PlaceHolder1" />
</form>
</body>