2012-11-12 90 views
0

您好我已经在GridView上编写了这个扩展方法。一旦选定的索引被更改,我想要触发SelectedIndexChanged事件。但是,这并没有发生。任何特定的原因? 我怎样才能得到这个固定的?GridView未触发SelectedIndexChanged

<Extension()> 
     Public Sub SelectRowByCallId(ByVal gridviewObj As GridView, ByVal callId As String) 
     Dim selectedIndex As Int32 = 0 
     Dim pageIndex As Int32 = 0 
     Dim gridViewPages As Int32 = gridviewObj.PageCount 

     For index = 0 To gridViewPages 
      gridviewObj.PageIndex = index 
      gridviewObj.DataBind() 

      For i = 0 To gridviewObj.DataKeys.Count - 1 
       If (Convert.ToString(gridviewObj.DataKeys(i).Value) = callId) Then 
        selectedIndex = i 
        pageIndex = index 
        Exit For 
       End If 

      Next i 

     Next index 

     gridviewObj.PageIndex = pageIndex 
     gridviewObj.SelectedIndex = selectedIndex 
     gridviewObj.DataBind() 


    End Sub 
+1

你是否已经在aspx控件上声明了这一点? – Aristos

+0

这是在aspx.vb – GC86

回答

0

设置SelectedIndex属性不会触发事件,但调用SelectRow方法。

+0

谢谢。有效。 – GC86

0

如果Aristos的是正确的,然后 SET AutoPostBack设置为真

+0

GridView没有该属性 – GC86

相关问题