动态创建的链接按钮命令事件不是触发 [英] dynamically created Link Button command event is not Firing
本文介绍了动态创建的链接按钮命令事件不是触发的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
private void CreateLinkButton( string commandArgument, string tidshow)
{
string [] show = tidshow.Split(' *');
innerTableCell = new HtmlTableCell();
System.Web.UI.HtmlControls.HtmlGenericControl createDiv =
new System.Web.UI.HtmlControls.HtmlGenericControl( DIV);
// createDiv.Style.Add(HtmlTextWriterStyle.BackgroundColor,cyan);
// createDiv.Style.Add(HtmlTextWriterStyle.Color,Red);
createDiv.Style.Add(HtmlTextWriterStyle.Height, 25px);
createDiv.Style.Add(HtmlTextWriterStyle.Width, 150px);
createDiv.Style.Add(HtmlTextWriterStyle.Position, relative);
createDiv.Style.Add(HtmlTextWriterStyle.VerticalAlign, false);
UpdatePanel up = new UpdatePanel();
up.ID = up + tidshow;
LinkButton linkButton = new LinkButton
{
ID = tidshow,
Text = show [ 1 ],
CommandArgument = commandArgument,
};
// linkButton.OnClientClick =ShowPopup();;
linkButton.Command + = this .linktest_Click;
linkButton.CausesValidation = false ;
linkButton.EnableViewState = true ;
linkButton.ToolTip = 快速填充;
linkButton.Style.Add(HtmlTextWriterStyle.BorderColor, green);
up.ContentTemplateContainer.Controls.Add(linkButton);
createDiv.Controls.Add(up);
innerTableCell.Controls.Add(createDiv);
innerTableRow.Cells.Add(innerTableCell);
}
受保护 void linktest_Click(< span class =code-sdkkeyword> Object sender,CommandEventArgs e)
{
flag = 允许 跨度>;
ViewState [ isPostBackOfOutputPage] = 是;
ViewState [ path] = @ e.CommandArgument.ToString( );
show(e.CommandArgument.ToString());
}
解决方案
这是向按钮添加事件处理程序的方法:
linkButton.Click + = new EventHandler(this.linktest_Click);
使用oninit()问题解决了。
感谢swapnil_jadhav
< pre lang = cs > 受保护的覆盖void OnInit(EventArgs e)
{
base.OnInit(e);
CreateLinkButton();
} < / pre > 跨度>
private void CreateLinkButton(string commandArgument, string tidshow)
{
string[] show = tidshow.Split('*');
innerTableCell = new HtmlTableCell();
System.Web.UI.HtmlControls.HtmlGenericControl createDiv =
new System.Web.UI.HtmlControls.HtmlGenericControl("DIV");
// createDiv.Style.Add(HtmlTextWriterStyle.BackgroundColor, "cyan");
// createDiv.Style.Add(HtmlTextWriterStyle.Color, "Red");
createDiv.Style.Add(HtmlTextWriterStyle.Height, "25px");
createDiv.Style.Add(HtmlTextWriterStyle.Width, "150px");
createDiv.Style.Add(HtmlTextWriterStyle.Position, "relative");
createDiv.Style.Add(HtmlTextWriterStyle.VerticalAlign, "false");
UpdatePanel up = new UpdatePanel();
up.ID = "up" + tidshow;
LinkButton linkButton = new LinkButton
{
ID = tidshow,
Text = show[1],
CommandArgument = commandArgument,
};
// linkButton.OnClientClick = "ShowPopup();";
linkButton.Command += this.linktest_Click;
linkButton.CausesValidation = false;
linkButton.EnableViewState = true;
linkButton.ToolTip = "Filling Fast";
linkButton.Style.Add(HtmlTextWriterStyle.BorderColor, "green");
up.ContentTemplateContainer.Controls.Add(linkButton);
createDiv.Controls.Add(up);
innerTableCell.Controls.Add(createDiv);
innerTableRow.Cells.Add(innerTableCell);
}
protected void linktest_Click(Object sender, CommandEventArgs e)
{
flag = "allow";
ViewState["isPostBackOfOutputPage"] = "yes";
ViewState["path"] = @e.CommandArgument.ToString();
show(e.CommandArgument.ToString());
}
解决方案
This is how you add an eventhandler to the button:
linkButton.Click += new EventHandler(this.linktest_Click);
using oninit() problem is solved.
thanks toswapnil_jadhav <pre lang="cs">protected override void OnInit(EventArgs e) { base.OnInit(e); CreateLinkButton(); }</pre>
这篇关于动态创建的链接按钮命令事件不是触发的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文