不显示LinkBut​​ton文本

时间:2016-10-24 11:37:57

标签: asp.net

我有一个网络表单,我在LinkButton中添加了Page_Load,如下所示:

protected void Page_Load(object sender, EventArgs e)
        {
            //Parent <ul>
            HtmlGenericControl ul = new HtmlGenericControl("ul");
            pnl1.Controls.Add(ul);
            for (int i = 1; i <= 3; i++)
            {
                HtmlGenericControl parentli = new HtmlGenericControl("li");
                LinkButton parentlnk = new LinkButton();
                parentli.Controls.Add(parentlnk);
                parentlnk.ID = "lnkparent" + i.ToString();
                parentlnk.Text = "Parent link" + i.ToString();
                ul.Controls.Add(parentli);                    

                //Child <ul>
                HtmlGenericControl childul = new HtmlGenericControl("ul");
                parentlnk.Controls.Add(childul);

                HtmlGenericControl childli = new HtmlGenericControl("li");
                childul.Controls.Add(childli);

                LinkButton childlk = new LinkButton();
                childlk.ID = "lnkchild" + i.ToString();
                childlk.Text = "link_child" + i.ToString();
                childli.Controls.Add(childlk);
            }
        }

输出是:

link

正确的页面应该是这样的:

Correct link

我测试了parentlnk.Attributesa.add("Text","Parent link")parentlnk.Attributesa.add("Value","Parent link"),但他们无法正常使用。

这个问题有解决方法吗?

感谢。

1 个答案:

答案 0 :(得分:0)

将这两行一起使用就是你的问题

parentlnk.Text = "Parent link" + i.ToString();
parentlnk.Controls.Add(childul);

当您向parentlnk添加控件时,它将删除您在Text中设置的任何内容。

您需要做的是创建一个Label类并将其作为控制器添加到parentlnk