asp.net – 如何在占位符中的动态生成的标签之间创建换行符?

前端之家收集整理的这篇文章主要介绍了asp.net – 如何在占位符中的动态生成的标签之间创建换行符?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是代码在下面的代码文件的Page_Load事件中:
LinkButton linkButton = new LinkButton();
        linkButton.ID = "LinkButtonDynamicInPlaceHolder1Id" + i;
        linkButton.ForeColor = Color.Blue;
        linkButton.Font.Bold = true;
        linkButton.Font.Size = 14;
        linkButton.Font.Underline = false;
        linkButton.Text = itemList[i].ItemTitle.InnerText;
        linkButton.Click += new EventHandler(LinkButton_Click);
        linkButton.Attributes.Add("LinkUrl",itemList[i].ItemLink.InnerText);
        PlaceHolder1.Controls.Add(linkButton); 
        Label label = new Label();
        label.ID = "LabelDynamicInPlaceHolder1Id" + i;
        label.ForeColor = Color.DarkGray;
        label.Text = itemList[i].ItemDescription.InnerText;
        PlaceHolder1.Controls.Add(label);

我想要生成每个控件之间的换行符。

解决方法

然而,如果您在Page_Load事件中执行此操作,则解决您的换行符问题的方法如下,那么您的事件处理程序将无法正常运行,并且将遇到“页面生命周期”问题。基本上,为了让您的事件处理程序在PostBack上启动,您真的需要在页面生命周期的早期创建这些动态控件。如果遇到此问题,请尝试将代码移动到OnInit方法
LinkButton linkButton = new LinkButton();
    linkButton.ID = "LinkButtonDynamicInPlaceHolder1Id" + i;
    linkButton.ForeColor = Color.Blue;
    linkButton.Font.Bold = true;
    linkButton.Font.Size = 14;
    linkButton.Font.Underline = false;
    linkButton.Text = itemList[i].ItemTitle.InnerText;
    linkButton.Click += new EventHandler(LinkButton_Click);
    linkButton.Attributes.Add("LinkUrl",itemList[i].ItemLink.InnerText);
    PlaceHolder1.Controls.Add(linkButton); 

    //Add This
    PlaceHolder1.Controls.Add(new LiteralControl("<br />"));


    Label label = new Label();
    label.ID = "LabelDynamicInPlaceHolder1Id" + i;
    label.ForeColor = Color.DarkGray;
    label.Text = itemList[i].ItemDescription.InnerText;
    PlaceHolder1.Controls.Add(label);

猜你在找的asp.Net相关文章