il modo per farlo è quello di utilizzare un modello di controllo per disegnare il bordo da soli. Puoi farlo in molti modi diversi, ecco un paio per te da guardare.
L'approccio trucco veloce:
<TextBox>
<TextBox.Template>
<ControlTemplate TargetType="{x:Type TextBox}">
<Grid>
<Rectangle Stroke="{StaticResource ResourceKey=detailMarkBrush}" StrokeThickness="1"/>
<TextBox Margin="1" Text="{TemplateBinding Text}" BorderThickness="0"/>
</Grid>
</ControlTemplate>
</TextBox.Template>
</TextBox>
e poi theres utilizzando le risorse ...
<ResourceDictionary>
<Color x:Key="detailMark">#FFA1A9B3</Color>
<SolidColorBrush x:Key="detailMarkBrush" Color="{StaticResource ResourceKey=detailMark}" />
<Style x:Key="flatTextBox" TargetType="{x:Type TextBox}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TextBox}">
<Grid>
<Rectangle Stroke="{StaticResource ResourceKey=detailMarkBrush}" StrokeThickness="1"/>
<TextBox Margin="1" Text="{TemplateBinding Text}" BorderThickness="0"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>
e quindi è possibile utilizzare lo stile:
<TextBox Style="{StaticResource ResourceKey=flatTextBox}" />
fonte
2011-10-18 00:15:24
Questo appare solo al lavoro mentre la casella di testo non è focalizzata. Quando ottiene la messa a fuoco, il bordo viene evidenziato con due sfumature blu. –