目前我正在尝试使用此数据绑定方法为每行分配 radgrid gridhyperlinkcolumn 的 NavigateURL 属性。不幸的是,对于每一行,链接都被设置为前一行的系统键。 所以,如果这些是我的行:
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
您可以直接执行此操作,无需后台代码:
<telerik:GridHyperLinkColumn
DataTextField="SystemName"
DataNavigateUrlFields="SystemKey"
DataNavigateUrlFormatString="~/System.aspx?Key={0}">
</telerik:GridHyperLinkColumn>