我想添加服务器端控件(CheckBoxList
s & Button
):
ChkBoxLst1
&&通过 Code ChkBoxLst2
- Button1
behind 然后使用 anHTMLTextWriter
来呈现控件。
我似乎无法做到这一点。
以上所有内容都在 Visual WebPart 中。
我尝试过的:
全球:
CheckBoxList ChkBoxLst2 = new CheckBoxList();
Button Bttn2 = new Button();
Label lbl2 = new Label();
StringWriter stringWriter = new StringWriter();
页面加载:
using (HtmlTextWriter writer = new HtmlTextWriter(stringWriter))
{
ChkBoxLst2.Items.Add(new ListItem("Three", "3"));
ChkBoxLst2.Items.Add(new ListItem("Four", "4"));
ChkBoxLst2.RenderControl(writer);
lbl2.RenderControl(writer);
Bttn2.Click += new EventHandler(this.Bttn2_Click);
Bttn2.Text = "Click this HTMLText WriteButton!";
Bttn2.RenderControl(writer);
}
spn.InnerHtml = stringWriter.ToString();
事件处理程序:
void Bttn2_Click(Object sender, EventArgs e)
{
foreach (ListItem item in ChkBoxLst2.Items)
{
if (item.Selected == true)
{
if (IsPostBack)
{
lbl.Text += item.Text + ", ";
}
}
}
}
EventHandler 不会被触发,并且选择的值不会像我在上面所做的那样被保存。关于为什么不的任何想法?我尝试了两个复选框列表的比较,但是HTMLTextWriter
实现不起作用,而简单的 .NET 做了同样的事情
,总而言之,我认为它是我对 HTMLTextWriter 的实现/我如何添加服务器控件。
请注意,spn 是标记中的文字范围控件。