Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
WPF - VB.NET - ScrollViewer vom DataGrid in einem Frame
_Cashisclay
myCSharp.de - Member



Dabei seit:
Beiträge: 277

Themenstarter:

WPF - VB.NET - ScrollViewer vom DataGrid in einem Frame

beantworten | zitieren | melden

Hallo zusammen,

ich hab ein DataGrid in einem Frame und möchte mir von dem DataGrid den ScrollViewer holen um den Wert des ScrollToVerticalOffset zu setzen.

Leider bekomm ich schon von der Funktion VistualTreeHelper.GetChildrenCount(DataGrid) eine 0 zurück, wenn ich das ganze außerhalb des Frames mit dem selben DataGrid ausführe bekomm ich einen Wert zurück.

Funktioniert so etwas grundsätzlich nicht wenn man eine Page in ein Frame geladen hat?

Grüße
private Nachricht | Beiträge des Benutzers
_Cashisclay
myCSharp.de - Member



Dabei seit:
Beiträge: 277

Themenstarter:

beantworten | zitieren | melden

Konnte noch keiner Erfahrung damit sammeln oder hab ich meine Frage eventuell doof formuliert?

Grüße
private Nachricht | Beiträge des Benutzers
MrSparkle
myCSharp.de - Team

Avatar #avatar-2159.gif


Dabei seit:
Beiträge: 5.655
Herkunft: Leipzig

beantworten | zitieren | melden

Hi _Cashisclay,

die Frage ist wirklich sehr speziell, und besonders viel Kontext gibst du auch nicht mit dazu. Ich habe so etwas jedenfalls noch nie gebraucht, weder den ScrollViewer eines DataGrids, noch mußte ich jemals "eine Page in ein Frame" laden.

Besser wäre, wenn du mal beschreibst, was du eigentlich vor hast damit. Da gibt es bestimmt eine einfacherer Herangehensweise.
Weeks of programming can save you hours of planning
private Nachricht | Beiträge des Benutzers
_Cashisclay
myCSharp.de - Member



Dabei seit:
Beiträge: 277

Themenstarter:

beantworten | zitieren | melden

Habs gelöst, war nur dumm wie Scheiße .. :-/

    Public Sub set_VerticalOffset_From_ScrollViewer(ByVal VerticalOffset As Double)

        ' --- interne Variablen Deklaration --- '

        Dim iCount As Integer = 0

        Try

            If Not VisualTreeHelper.GetChildrenCount(DataGrid) = 0 Then

                Do While iCount < VisualTreeHelper.GetChildrenCount(DataGrid)

                    If TypeOf (VisualTreeHelper.GetChild(DataGrid, iCount)) Is Border Then

                        Dim Border As Border = VisualTreeHelper.GetChild(DataGrid, iCount)

                        If Not VisualTreeHelper.GetChildrenCount(Border) = 0 Then

                            If TypeOf (VisualTreeHelper.GetChild(Border, iCount)) Is ScrollViewer Then

                                Dim ScrollViewer As ScrollViewer = VisualTreeHelper.GetChild(Border, iCount)


                                If ScrollViewer IsNot Nothing Then

                                    ScrollViewer.ScrollToVerticalOffset(VerticalOffset)

                                End If

                            End If

                        End If

                    End If

                    iCount = iCount + 1

                Loop

            End If

        Catch ex As Exception
            Fehlerbehandlung = New Fehlerbehandlung
            Fehlerbehandlung.Fehlermeldung = ex
            Fehlerbehandlung.ShowDialog()
        End Try

    End Sub
private Nachricht | Beiträge des Benutzers