通过代码动态添加超链接

时间:2011-06-15 14:32:33

标签: asp.net vb.net

我有一个网络表单,但我必须通过代码执行此操作,因为我不知道从一开始我需要的超链接数量。

如何在标签中添加带有Image的超链接,超链接的数量取决于查询的行数,每行给我链接信息以进行导航。

提前致谢。

2 个答案:

答案 0 :(得分:2)

在循环浏览数据时,您可以手动添加链接到这样的行:

       For i As Integer = 0 To 10
            Dim row As New HtmlTableRow
            row.Cells.Add(New HtmlTableCell)

            Dim Link As New HyperLink
            Link.Text = "WhateverText"
            Link.NavigateUrl = "page.aspx"
            Link.ImageUrl = "~/Theme/Images/SomeImage.gif"
            Link.ToolTip = "ToolTipText"
            row.Cells(0).Controls.Add(Link)
        Next

当然,这会将链接添加为html表中的第一个单元格。不确定您打算如何显示数据。

回应下面的评论。您可以改为插入新单元格

        For i As Integer = 0 To 10
            Dim row As New HtmlTableRow
            Dim cell As New HtmlTableCell
            row.Cells.Insert(1, cell)
            Dim Link As New HyperLink
            Link.Text = "WhateverText"
            Link.NavigateUrl = "page.aspx"
            Link.ImageUrl = "~/Theme/Images/SomeImage.gif"
            Link.ToolTip = "ToolTipText"
            row.Cells(0).Controls.Add(Link)
        Next

您也可以简单地将控件添加到标签所在的现有单元格中,而不是创建新单元格。您可以通过现有单元格的索引值(对于行中的每个单元格从0开始)

来执行此操作

答案 1 :(得分:0)

这个问题类似于你想要做的事情: Auto increment asp control ID

两个选项要么使用转发器,要么将控件动态添加到面板或其他容器控件中。