Передать значения из параметра QueryString в гиперссылку GridView - PullRequest
0 голосов
/ 14 января 2010

Я использую GridView со столбцом HyperLink и хочу сделать следующее:

<asp:HyperLinkField DataNavigateUrlFields="DID"  
DataNavigateUrlFormatString="~/student/group/document/Body.aspx?DID={0}&GN={QueryString("GN")}" HeaderText="View Document" Text="view" />

Как я могу получить значение GN из параметра QueryString и добавить его в столбец HyperLink?

1 Ответ

0 голосов
/ 15 января 2010

Насколько важно для вас сделать это в разметке?Я довольно уверен, что вы не можете сделать это в разметке с DataNavigateUrlFields и DataNavigateUrlFormatString, но вы можете сделать это в коде в событии RowDataBound:

Private Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound

    Dim link As HyperLink
    Dim row As DataRow

    If e.Row.RowType = DataControlRowType.DataRow Then
        'Get the row we are binding to
        row = CType(e.Row.DataItem, DataRowView).Row

        'Find the hyperlink control we want to set the link for
        link = CType(e.Row.Controls(1).Controls(0), HyperLink)

        'Check if the querystring we want to include is missing or empty
        If Request.QueryString("GN") Is Nothing Or Request.QueryString("GN") Is String.Empty Then
            'If there is no querystring then we can only bind to the DID
            link.NavigateUrl = "~/student/group/document/Body.aspx?DID=" & row.Item("DID").ToString

        Else
            'The querystring element is present so include it in the link
            link.NavigateUrl = "~/student/group/document/Body.aspx?DID=" & row.Item("DID").ToString & "&GN=" & Request.QueryString("GN").ToString

        End If

    End If

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...