C# [WPF] Klick auf Scrollbar Windows konform abbilden

palaber

Captain
Registriert
Juni 2006
Beiträge
3.856
Hi zusammen!

Ich habe eine ganz normale ListView. In dieser hätte ich gerne das Verhalten analog zu Windows in dem Fall, wenn man
auf die Scrollbar oberhalb oder unterhalb der Scrollposition klickt. Also nicht auf [^] oder [v] klickt oder den "Balken" verschiebt. Im Windows wird wenn man unterhalb des Balken klickt das unterste Element ganz oben in der Liste angezeigt.

Ich habe zwei ListViews und eine funktioniert wie gewollt aber die andere nicht! Unterschiede gibt es bei den Listen keine bis auf die Datenquelle.Bei der "falschen" ListView wird das unterste Element nach dem klick aus dem sichtbaren Bereich heraus geschoben (um ein Item).

Lustigerweise funktioniert die ListView wenn ich den Style weg lasse. Da beide Listen im lokalen XAML-Code den Style definieren und dieser exakt gleich ist dürfte das doch gar nicht passieren, oder?
Übersehe ich irgendetwas?

ListView:
Code:
<ListView ItemsSource="{Binding DatenQuelle}"
Style="{StaticResource ListViewStyle}" />

Style:
Code:
<Style x:Key="ListViewStyle" TargetType="{x:Type ListBox}">
	<Style.Resources>
		<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="{StaticResource MarkedItemColor}" />
		<SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Transparent" />
	</Style.Resources>
	<Setter Property="HorizontalAlignment" Value="Stretch" />
	<Setter Property="HorizontalContentAlignment" Value="Stretch" />
	<Setter Property="VerticalAlignment" Value="Stretch" />
	<Setter Property="Background" Value="Transparent" />
	<Setter Property="BorderThickness" Value="0" />
	<Setter Property="FontFamily" Value="Courier New" />
	<Setter Property="FocusVisualStyle" Value="{x:Null}" />
	<Setter Property="SelectedItem" Value="{x:Null}"/>
</Style>

Schon mal danke für eure Hilfe!
 
Zuletzt bearbeitet:
Also ich glaube, der Key im Resource Dictionary ist falsch:
ListViewStyle
vs
<Style x:Key="PatternEditorListView"
vlt ist das das Problem?
 
Zurück
Oben