我正在按下下面的按钮控件。 我有一个方法,有一些像我提到的下面的代码。 我尝试过两种方式,但都不起作用。用btn对象onw,第二用直接写它。 我需要在N个项目的运行时间创建所有三个按钮,所有按钮将有一些常见的东西,除了身份。请建议我如何使它工作。
Button btn = new Button();
btn.ID = "btnDress" + x;
btn.CommandName = "DressBtn";
btn.Text = "Dressing";
btn.CommandArgument = x.ToString();
btn.UseSubmitBehavior = true;
btn.Click += new EventHandler(btnDress_Click);
void draw()
{
drawItem = drawItem + @" <div class=new_options>
<ul>
<li>
"+btn+ @"</li>
<li>
<asp:Button ID='btnSpInst_'" + x + @" runat='server' CommandName='SpeInstBtn' Text='Special Instruction'
OnClick='btnDress_Click' CommandArgument='" + x + @"' /></li>
<li>
<asp:Button ID='btnTopp_'" + x + @" runat='server' CommandName='ToppBtn' Text='Toppings' OnClick='btnDress_Click' CommandArgument='" + x + @"' /></li>
</ul>
<div class='clear'>
</div>";
x++;
}
这段代码的问题是,对于永远的div我需要在飞行中写3个按钮,它有一些修复参数,就像我提到的asp按钮,我尝试种植但是那些写为字符串而不是工作,有些人可以告诉我如何才能实现上述工作。
这是我需要重绘项目的html。在飞行中,这里我保持按钮,但实际上我想在飞行中生成它。
<div class="new_options">
<ul>
<li>
<asp:Button ID="Button4" runat="server" Visible="true" CommandName="DressBtn" Text="Dressing" OnClick="btnDress_Click" /></li>
<li>
<asp:Button ID="Button5" runat="server" Visible="true" CommandName="SpeInstBtn" Text="Special Instruction"
OnClick="btnDress_Click" /></li>
<li>
<asp:Button ID="Button6" runat="server" CommandName="ToppBtn" Visible="true" Text="Toppings" OnClick="btnDress_Click" /></li>
</ul>
<div class="clear">
</div>
</div>
答案 0 :(得分:1)
您无法以这种方式创建服务器控件。使用代码(您已经完成)创建它们并将它们添加到表单中。您也可以使用占位符。
Button btn = new Button();
btn.ID = "btnDress" + x;
btn.CommandName = "DressBtn";
btn.Text = "Dressing";
btn.CommandArgument = x.ToString();
btn.UseSubmitBehavior = true;
btn.Click += new EventHandler(btnDress_Click);
form1.Controls.Add(btn);
答案 1 :(得分:1)
从后面的代码中执行此操作。像你从这里开始构建控件,然后选择页面上的某个位置将其放入......像someContainerControl.Controls.Add(MyNewButton);