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
Scrollbare Controls im Scrollviewer
Tr1umph
myCSharp.de - Member



Dabei seit:
Beiträge: 58

Themenstarter:

Scrollbare Controls im Scrollviewer

beantworten | zitieren | melden

Hi

Ich habe in einem Scrollviewer ein Grid. In diesem Grid sind neben ein paar Buttons auch ein DataGrid. Das Grid wird immer so groß wie es denn sein will. Das DataGrid hat also selber nie eine Scrollbar.

Der Scrollviewer an sich funzt wunderbar. Das einzige Problem was ich habe ist das Scrollen per Mausrad. Sobald ich mit dem Mauszeiger über dem DataGrid bin, funzt das scrollen per Mausrad für den Scrollviewer nicht mehr.

Was kann man da machen?

Gruß
private Nachricht | Beiträge des Benutzers
winSharp93
myCSharp.de - Experte

Avatar #avatar-2918.png


Dabei seit:
Beiträge: 5.742
Herkunft: Stuttgart

beantworten | zitieren | melden

Hallo Tr1umph,

du könntest versuchen, via Template den standardmäßigen ScrollViewer um das DataGrid zu entfernen.
Evtl. reicht es auch schon, Scrolling für das DataGrid zu deaktivieren.
private Nachricht | Beiträge des Benutzers
tkrasinger
myCSharp.de - Member



Dabei seit:
Beiträge: 574
Herkunft: Enzesfeld (Niederösterreich)

beantworten | zitieren | melden

Ich hol das nach der Zeit echt ungern wieder rauf, aber ich stehe genau vor dem Problem:
<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        x:Class="DataGridScrollingTest.MainWindow"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <ScrollViewer>
            <StackPanel>
                <Border Height="300" Background="#FF9999" Margin="10">
                    <TextBlock>Red</TextBlock>
                </Border>
                <DataGrid x:Name="grdData" 
                          ScrollViewer.CanContentScroll="True" 
                          ScrollViewer.VerticalScrollBarVisibility="Disabled"/>
                <Border Height="300" Background="#1199FF" Margin="10">
                    <TextBlock>Blue</TextBlock>
                </Border>
            </StackPanel>
        </ScrollViewer>
    </Grid>
</Window>

Wenn ich mit der Maus über dem DataGrid (enthält z.B. 3 Zeilen) bin, kann ich nicht mehr per Mausrad scrollen. Das DataGrid verschluckt das Scrollen einfach - obwohl keine Scrollbar da ist.

Events bekomm ich nur PreviewMouseWheel aber MouseWheel nicht mehr.

Wie kann man das lösen - wenn ich weiß, dass das DataGrid nie einen vertikalen Scrollbalken hat?
private Nachricht | Beiträge des Benutzers