0

TextBox が読み取り専用でタブ移動している場合、テキスト ボックスのフォーカス ボーダーを無効にしたいのですが、これをテキスト ボックスのスタイルで実行したいと考えていました。

内容を更新しました:

スクリーンショット: ここに画像の説明を入力

4

2 に答える 2

0

これを試して:

<Window.Resources>
    <Style x:Key="FocusVisualStyle" TargetType="{x:Type Control}">
        <Setter Property="Control.Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type Control}">
                    <Border SnapsToDevicePixels="True" 
                            CornerRadius="0" 
                            BorderThickness="2"
                            BorderBrush="#7B2F81" />
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style TargetType="{x:Type TextBox}">
        <Setter Property="Background" Value="Pink" />

        <Style.Triggers>
            <Trigger Property="IsReadOnly" Value="True">
                <Setter Property="FocusVisualStyle" Value="{StaticResource FocusVisualStyle}" />
            </Trigger>
        </Style.Triggers>
    </Style>
</Window.Resources>

<Grid>
    <TextBox Text="TestText" 
             IsReadOnly="True"
             HorizontalAlignment="Center" 
             VerticalAlignment="Center" />
</Grid>

TextBox.IsReadOnly == True次にFocusVisualStyleStyleTrigger に設定する場合。でカスタマイズできるフォーカスの視覚的な動作FocusVisualStyle

于 2014-10-14T04:46:34.007 に答える