2010-06-25 8 views
0

저는 채워지는 gridfield가 있습니다. 내 셀 중 하나에 hyperlinkfield가 있습니다. 버튼 필드를 사용하는 것처럼 하이퍼 링크 필드의 rownumber를 얻는 것이 가능한지 알아야합니다. 아쉽게도 buttonfield를 사용할 수 없기 때문에 문제가 해결되었을 것입니다. 하이퍼 링크 필드와 관련된 이벤트를 찾을 수 없으며 정보를 올바르게 호출하면 포스트 백이 수행되지 않습니다. 이것이 가능한 경우 어떻게해야합니까? 편집을 요청한gridview에서 하이퍼 링크 필드의 행 번호를 가져 오는 것이 가능합니까?

:

Protected Sub objGridView_RowCommand(ByVal sender As Object, ByVal e As GridViewCommandEventArgs) 

Dim strProID As String 
    If e.CommandName = "Select" Then 
     Dim index As Integer = Convert.ToInt32(e.CommandArgument) 
     RowNR = index 
    End If 
     SelectedID = RowNR 
    Response.Write("<script>document.location.href = " & "('SelectedTask.aspx');</script>") 'windows.navigate doesn't work in firefox and several other browsers 
End Sub 

내가하는 LinkButton을 사용하는 경우이 내 코드이었다. gridview의 linkbutton에는 commandname 속성이 있으며이를 사용하면 이벤트가 발생합니다. 나는 그랬다. 불행히도 hyperlinkview 셀에는 이러한 속성이 없습니다. 그래서 하이퍼 링크 채움 셀이있는 내 클릭 하나를 클릭하면 어떤 rownumber를 선택했는지 확인할 수 없습니다.

편집 : 그래서 간단한 DataNavigateFormatString으로 문제를 해결했습니다.
나는 어리 석다는 것을 빨리 알지 못하지만, 그다지 늦지 않은 것이 좋습니다.

내 셀에서 값을 얻으려면 rownumber를 사용하는 것이 왜 엉망입니다. 포스트 백이 아닌 훨씬 빠르고 깨끗한 값을 얻을 수 있다면.)

+0

답변자가 당신이 무엇을하려고하는지 더 잘 이해할 수 있도록 코드를 입력 해주십시오. – IsmailS

+0

물론 내 게시물을 업데이 트하자. – jovany

+0

HyperLinkField는 사용자를 다른 페이지로 이동시킵니다. 이유/사용자가 클릭 할 때 페이지의 코드를 실행할 수 있기를 기대하는 이유는 확실하지 않습니다. –

답변

0

"OnSelectedIndexChanging"을 사용해보십시오. 이것은 당신을 도울 것입니다.

+0

미안하지만이 이벤트는 현재 코드로 인해 발생하지 않습니다. – jovany

+0

@jovany : aspx 파일의 GridView 코드를 붙여주세요. – Saar

+0

HyperlinkField 및 DataNavigateUrlFormatString을 사용하여 수정했습니다. 명확성을 위해 게시물을 편집하겠습니다. – jovany

관련 문제