2017-08-02 13 views
0

テキストボックスの周りに丸みのある境界線があります。それを表示すると、 "BorderThickness"プロパティを0に設定し、 "BorderBrush"を透明に設定しても、テキストボックスの水平上部と下部ラインが表示されます。テキストボックスが表示されないようにするにはどうすればよいですか?WPFの枠線とテキストボックスに問題があります。.NET 3.5

<Border Grid.Row="0" Grid.Column="0" 
     BorderBrush="DarkBlue"   
     BorderThickness="0.8" 
     CornerRadius="5" 
     Margin="5,10,3,10" 
     Height="Auto" Width="Auto" 
     Background="AliceBlue" 
     HorizontalAlignment="Left"> 

     <TextBox x:Name="txtSearch" 
       Width="250" 
       Style="{StaticResource WatermarkedTextBox}" 
       VerticalAlignment="Center" 
       HorizontalAlignment="Left" 
       BorderBrush="Transparent" 
       BorderThickness="0" 
       Margin="1"/> 
</Border> 

テキストボックスの境界線が表示されている理由を任意のアイデア:コードの下

試行#1

私は犯人はスタイルが接続されていることを発見した、それは次のようである静的リソースWatermarkedTextBoxです:

<Style x:Key="WatermarkedTextBox" TargetType="TextBox"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="TextBox"> 
       <Grid> 
        <TextBox Text="{Binding Text, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}, UpdateSourceTrigger=PropertyChanged}" /> 
        <TextBlock HorizontalAlignment="Left" VerticalAlignment="Center" 
          Text="{TemplateBinding Tag}" 
          Margin="5,0,5,0" 
          Foreground="#FF808080" 
          FontStyle="Italic" 
          IsHitTestVisible="False" 
          x:Name="UserMessage" 
          Visibility="Hidden"/> 
       </Grid> 
       <ControlTemplate.Triggers> 
        <MultiTrigger> 
         <MultiTrigger.Conditions> 
          <Condition Property="Text" Value=""/> 
          <Condition Property="IsKeyboardFocusWithin" Value="False"/> 
         </MultiTrigger.Conditions> 
         <Setter Property="Visibility" TargetName="UserMessage" Value="Visible"/> 
        </MultiTrigger> 
       </ControlTemplate.Triggers> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 

だから、どのように私はこの問題を解決することができますか?

+0

誰か知っていますか?どんな助力も高く評価されます。どうも。 – user1624552

答えて

0

犯人はこれを0にBorderThicknessプロパティを設定する「WatermarkedTextbox」スタイルに設定されたテキストボックスの境界線だった今働いている:それは起こっている理由

<Style x:Key="WatermarkedTextBox" TargetType="TextBox"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="TextBox"> 
       <Grid> 
        <TextBox BorderThickness="0" 
          Text="{Binding Text, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}, UpdateSourceTrigger=PropertyChanged}" /> 
        <TextBlock HorizontalAlignment="Left" VerticalAlignment="Center" 
          Text="{TemplateBinding Tag}" 
          Margin="5,0,5,0" 
          Foreground="#FF808080" 
          FontStyle="Italic" 
          IsHitTestVisible="False" 
          x:Name="UserMessage" 
          Visibility="Hidden"/> 
       </Grid> 
       <ControlTemplate.Triggers> 
        <MultiTrigger> 
         <MultiTrigger.Conditions> 
          <Condition Property="Text" Value=""/> 
          <Condition Property="IsKeyboardFocusWithin" Value="False"/> 
         </MultiTrigger.Conditions> 
         <Setter Property="Visibility" TargetName="UserMessage" Value="Visible"/> 
        </MultiTrigger> 
       </ControlTemplate.Triggers> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 
関連する問題