2016-10-17 19 views
0

何らかの理由で、マウスがテキストボックスの上を移動すると、テキストボックスの境界線が青色をオフにする色に変化します。ここに私のXAMLは次のとおりです。マウスの入力時にWPFテキストボックスの境界線の色が変化します

<TextBox 
    BorderThickness="1" 
    BorderBrush="Black" 
    x:Name="textBox" 
    custom:ScrollToEndBehavior.OnTextChanged="True" 
    VerticalScrollBarVisibility="Auto" 
    HorizontalAlignment="Center" 
    Height="154" 
    Margin="32,220,36,5" 
    TextWrapping="Wrap" 
    Text="{Binding LogText, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" 
    Width="449" 
    Background="WhiteSmoke" 
    Visibility="{Binding Path=IsLogVisible, Converter={StaticResource BoolToVis}}" 
    IsReadOnly="True"/> 

答えて

1

変更IsMouseOverトリガと黒にデフォルトのスタイル:

<Style TargetType="TextBox"> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="TextBox"> 
        <Border BorderThickness="{TemplateBinding Border.BorderThickness}" 
        BorderBrush="{TemplateBinding Border.BorderBrush}" 
        Background="{TemplateBinding Panel.Background}" 
        Name="border" 
        SnapsToDevicePixels="True"> 
         <ScrollViewer HorizontalScrollBarVisibility="Hidden" 
          VerticalScrollBarVisibility="Hidden" 
          Name="PART_ContentHost" 
          Focusable="False" /> 
        </Border> 
        <ControlTemplate.Triggers> 
         <Trigger Property="UIElement.IsMouseOver" Value="True"> 
          <Setter Property="Border.BorderBrush" TargetName="border" 
        Value="Black"/> 
         </Trigger> 
        </ControlTemplate.Triggers> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 
+0

あなたは「テンプレート」setterプロパティで何を参照するか私に説明することができ、ありがとうございました。私はインテリセンスドロップダウンのオプションとして持っていません。私はの中にタグを作成し、親切に提供したコードを挿入しました。そして、私が得ている唯一のエラーは、 "テンプレート"を指します。 –

+0

"テンプレート"プロパティは、コントロールがどのように振る舞い、見えるかを上書きすることを可能にします。 – Rom

関連する問題