Telerik GridHyperlinkColumn 的 NavigateUrl 总是差一个索引?

问题描述 投票:0回答:1

目前我正在尝试使用此数据绑定方法为每行分配 radgrid gridhyperlinkcolumn 的 NavigateURL 属性。不幸的是,对于每一行,链接都被设置为前一行的系统键。 所以,如果这些是我的行:

  • 系统名称|系统密钥
  • 系统1|1
  • 系统2|2
  • 系统3|3

Sys1 将没有链接, Sys2 将有一个指向 ~/System.aspx?Key=1 的链接 Sys3 将有一个指向 ~/System.aspx?Key=2 的链接 我发现它可能是在设置了行的 url 之后设置 NavigateURL 属性,因此只影响下一行?那么如何正确设置这个属性呢?

当前代码:

Protected Sub rg_Systems_ItemDataBound(ByVal s As Object, ByVal e As GridItemEventArgs) Handles rg_Systems.ItemDataBound
        If TypeOf e.Item Is GridDataItem Then
            Dim col As GridHyperLinkColumn = rg_Systems.MasterTableView.GetColumn("SystemName")
            Dim item As GridDataItem = e.Item
            Dim newUrl As String = "~/System.aspx?Key=" & item.GetDataKeyValue("SystemKey").ToString()
            col.NavigateUrl = newUrl
        End If
    End Sub
vb.net hyperlink telerik radgrid
1个回答
0
投票

您可以直接执行此操作,无需后台代码:

<telerik:GridHyperLinkColumn 
    DataTextField="SystemName"
    DataNavigateUrlFields="SystemKey" 
    DataNavigateUrlFormatString="~/System.aspx?Key={0}">
</telerik:GridHyperLinkColumn>
© www.soinside.com 2019 - 2024. All rights reserved.