2010-03-25 2 views
4

Во время обновления GridView (ListView с большим количеством столбцов) я столкнулся с проблемой, что я не мог изменить цвет строки Highlighted. Я обыскал в Интернете и узнал, что это может помочь.WPF ListView в режиме GridView Проблема подсветки

<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" 
       Color="Transparent" /> 
<SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" 
       Color="Transparent" /> 

Это решило проблему для некоторых людей, но это не помогло мне. Цвет выделения был по-прежнему включен в систему по умолчанию. Наконец, мне удалось изменить цвет выделенной строки, но подсветка все еще видна вокруг границы строки, и мне нужно избавиться от выделения в столбцах.

Heres код, где мой подход не работает:

<ListView > 
<ListView.Resources> 
    <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" 
        Color="Transparent" /> 
    <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" 
        Color="Transparent" /> 
</ListView.Resources> 
<ListView.View> 
    <GridView> 
    <GridViewColumn Header="a"/> 
    <GridViewColumn Header="b"/> 
    </GridView> 
</ListView.View> 
<ListViewItem>sth</ListViewItem> 
<ListViewItem>sthelse</ListViewItem> 
</ListView> 

ответ

0

, если я действительно понимаю, вы хотите, чтобы удалить цвет выделения. если вы хотите сделать это, это просто. Используйте этот стиль:

<Style x:Key="SimpleListViewItem" TargetType="ListViewItem"> 
     <Setter Property="FocusVisualStyle" Value="{x:Null}" /> 
</Style> 

, но для использования этого стиля вы должны использовать этот стиль для ItemContainerStyle собственности.

Я надеюсь, что это решение поможет вам.

приветствует Rev

+0

Добавил это в ItemContainerStyle, но gridview все еще сопротивляется. ListView отлично работает с этим изменением (но даже моему решению удалось разрешить обычное listview). :-( – user286405

+0

Можете ли вы отправить свой код! (Полный код о gridview) – Rev

Смежные вопросы