Удалить пункт списка пунктирной рамкой - PullRequest
1 голос
/ 02 декабря 2010

У меня есть пользовательский стиль ListBoxItem с Border, окружающим ContentPresenter.(Код найден ниже).Моя рамка действует как индикатор выбора и становится серой, когда вы ее выбираете.Все хорошо, когда я использую мышь, но в тот момент, когда я использую клавиатуру, появляется уродливая пунктирная серая рамка.Как мне это убрать?

Картинки:

UGLY GREY BORDER

Вы можете видеть, что когда я нажимаю / нажимаю на ListBoxItem, граница с включенным фоном окружает элемент.Но при использовании клавиатуры появляется уродливая пунктирная рамка.

Код:

<Style x:Key="{x:Type ListBoxItem}" TargetType="ListBoxItem" BasedOn="{StaticResource {x:Type ListBoxItem}}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="ListBoxItem">
                <StackPanel>
                    <Border Name="HighlightBorder"  
                            Padding="30"
                            BorderBrush="Transparent"
                            BorderThickness="1"
                            CornerRadius="5"
                            >
                            <ContentPresenter/>
                    </Border>
                </StackPanel>
                <ControlTemplate.Triggers>
                    <Trigger Property="IsMouseOver" Value="True">
                        <Setter TargetName="HighlightBorder" Property="Background" Value="#F3F3F3"/>
                    </Trigger>
                    <Trigger Property="IsSelected" Value="True">
                        <Setter TargetName="HighlightBorder" Property="Background" Value="#DFDFDF"/>
                    </Trigger>
                    <Trigger Property="IsKeyboardFocused" Value="True">
                        <Setter TargetName="HighlightBorder" Property="Background" Value="#DFDFDF"/>
                    </Trigger>
                </ControlTemplate.Triggers>
            </ControlTemplate>
        </Setter.Value>
    </Setter>

1 Ответ

5 голосов
/ 02 декабря 2010

С это ответ от jobi-joy

<Style x:Key="ListBoxItemStyle1" TargetType="{x:Type ListBoxItem}"> 
   <Setter Property="FocusVisualStyle" Value="{x:Null}"/> ....
...