WPF里面制作圆角文本框

时间:2022-07-09 06:16:56

    本以为WPF里面的XAML会很强大,可以设置很多属性,比如文本框的圆角属性,可惜的是这属性是不存在的。不过意外发现Border是有CornerRadius属性的,我们用它可以设置Border的圆角效果。

    XAML主要代码如下:

     <Border CornerRadius="5" Height="35" Margin="142,137,202,139" BorderThickness="1" BorderBrush="#FF737070">
            <TextBox Height="32" Name="textBox1" Width="156" Background="{x:Null}" BorderThickness="0" FontSize="22" />
     </Border>

     要注意的是Border的BorderThickness属性是设置这个Border的边框粗细,BorderBrush则是这个边框的颜色。而TextBox的Background我们给它设置为透明效果("{x:Null}"),BorderThickness是文本框的边框,我们把它去掉,设置为0。如此就相当于把这个TextBox给隐藏了,不过它是存在的,依然可以输入文字。只不过我们“偷梁换柱“,用Border的外观来替代这个TextBox而已...

效果如下:

 WPF里面制作圆角文本框

 

当然,既然可以定义这些属性,我们自然可以把它封装为一个dll控件,并且可以自定义这个控件的圆角属性,以后就可以完美使用它了...

 

如要转载,请注明作者及出处,谢谢!