Znalazłem i wypróbowałem wiele rozwiązań w Internecie, które powinny pozwolić mi wyłączyć mojej funkcji wyświetlania WPF ListBox, ale żaden z nich nie działa dla mnie. Ten zrzut ekranu pokazuje efekt najechania chciałbym ukryć lub pozbyć:WPF ListBox wyłączyć efekt hover
To (uproszczona wersja) kodu XAML Obecnie mam:
<ListBox ItemsSource="{Binding Logs}" Grid.Column="1" Width="800" Height="100" >
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Style.Triggers>
<Trigger Property="Control.IsMouseOver" Value="True">
<Setter Property="Control.Background" Value="Transparent" />
</Trigger>
</Style.Triggers>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
jednak z jakiegoś powodu nie wydaje mi się, żeby to działało. Czy mój rodzic ListBox (ten w tle) lub inna kontrola może nadpisać jego styl dziecięcy przez przypadek? (Już próbowałem zastąpić styl rodziców).
Każda pomoc będzie bardzo ceniona. :(
Właśnie stworzył nową aplikację WPF tylko z pola listy, a ja nie mam Efekt domyślny: – Tomtom
To dość kłopotliwe, testowałem to na Windowsie 8 (jak widać na moim zrzucie ekranu) i na Windows 7, gdzie efekt unoszący się wyświetla w brzydszej niebieskości ... Spróbuję stworzyć nowy wpf-aplikacja za pomocą listbox za minutę, aby sprawdzić, czy to robi różnicę czy nie. – beta
Tak, masz rację, ListBox nie ma domyślnie efektu najechania. Sądzę więc, że jest tam, ponieważ mamy zestaw globalnych stylów dla wszystkich kontrolek podrzędnych. Czy istnieje sposób na zastąpienie tego stylu? Obecnie próbuję zacząć od –
beta