У меня есть ListView
, с ListView.View
как GridView
.
По умолчанию mouseOver
работает, ListViewItem
выделяется при наведении курсора мыши и выбирается при нажатии. Но после того, как я изменил ControlTemplate
, я получил нужный шаблон, но выделение и выбор исчезли.
Я использую триггер, но он не работает.
Вот мой код.
<Style x:Key="filesListViewItemStyle" TargetType="{x:Type ListViewItem}">
<Setter Property="IsSelected" Value="{Binding FileIsSelected}"/>
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListViewItem">
<Grid Height="40">
<GridViewRowPresenter/>
<Line X1="0.0" Y1="0.0" X2="{Binding ActualWidth, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type ListView}}}" Y2="0.0" StrokeThickness="1" StrokeDashArray="2" Stroke="Gray" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="Green"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
В моем шаблоне я фактически добавил строку в качестве разделителя между 2 строками ListViewItem
.
Я просто не понимаю, почему триггер не работает!