2016-07-29 6 views
0

Wie bekomme ich die Scrollhöhe eines RadGrids?ScrollHeight von RadGrid abrufen

Wenn ich also nach unten scrolle und in einer Zeile auf Bearbeiten klicke, möchte ich diese Bildlaufposition speichern, damit ich beim Scrollen nach unten auf Aktualisieren klicke, wenn ich auf Bearbeiten klicke.

I haben versucht: HiddenField.Value= rGVDELTaskLog.ClientSettings.Scrolling.ScrollHeight.ToString()

Dies liefert die volle Höhe des Gitters (400 Pixel in diesem Fall)

I versucht: HiddenField.Value = rGVDELTaskLog.ClientSettings.Scrolling.ScrollTop

Dies liefert 0, wenn ganz nach oben scrollen, aber wenn man ganz nach unten scrollt, gibt es 183px und nicht 400px zurück.

Wie bekomme ich die ScrollHeight, dass die Bildlaufleiste aktiviert ist, wenn ich auf Bearbeiten klicke?

+0

Kann jemand helfen? – AxleWack

Antwort

0

Ich habe die Lösung selbst gefunden.

Auf dem EditCommand des RadGrid habe ich den Wert für ScrollTop abgerufen und in einem HiddenField gespeichert. Auf diese Weise wird die Bildlaufposition auf die genaue Scroll-Position eingestellt werden, war es auf, wenn Sie bearbeiten geklickt:

Protected Sub rGVDELTaskLog_EditCommand(sender As Object, e As Telerik.Web.UI.GridCommandEventArgs) Handles rGVDELTaskLog.EditCommand 
    Dim ScrollPosition As Integer 

    If TypeOf e.Item Is GridDataItem Then 
     If rGVDELTaskLog.ClientSettings.Scrolling.ScrollTop = "" Then 
      ScrollPosition = 0 
     Else 
      ScrollPosition = rGVDELTaskLog.ClientSettings.Scrolling.ScrollTop 
     End If 

     hidScrollPosition.Value = ScrollPosition 

    End If 
End Sub 

ich dann die scrollTop des RadGrid im Hidden auf sagen wir auf den Wert zum Beispiel auf der CancelCommand (Das gleiche würde für den UpdateCommand gehen):

Protected Sub rGVDELTaskLog_CancelCommand(sender As Object, e As Telerik.Web.UI.GridCommandEventArgs) Handles rGVDELTaskLog.CancelCommand 
    rGVDELTaskLog.ClientSettings.Scrolling.ScrollTop = hidScrollPosition.Value 
End Sub