MSDN 教学短片 WPF 7(WPF文字方块)

本文介绍如何使用WPF创建带有图片背景的文字方块,并通过VisualBrush实现文字方块的倒影效果。文章详细展示了XAML代码,包括设置字体、背景图片、倒影矩形及相对变换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

WPF文字方块

其实我们接着上次讲的课。

我们先拖个textBox到窗体中,给他字的背景色上一幅图画。

<TextBox Margin="0,52,16,69" Name="textBox1" FontSize="36"
                     Background="Yellow" BorderBrush="Red" BorderThickness="7"
                     FontFamily="Arial Bold" >
                <TextBox.Foreground>
                    <ImageBrush ImageSource="Rose.bmp" />
                </TextBox.Foreground>

</TextBox>

这里为了更好的效果,我们将字体设置为Arial Bold。

image

由于图片的原因,效果不是很好。

接下来我们给它两个倒影的文字方块。

上面的方块。

 <Rectangle Margin="5,7,16,0" Name="rectangle1" Stroke="Black" Height="42" VerticalAlignment="Top" StrokeThickness="0.01">
                <Rectangle.Fill>
                    <VisualBrush Visual="{Binding ElementName=textBox1}">
                        <VisualBrush.RelativeTransform>
                            <TransformGroup>
                                <ScaleTransform ScaleX="1" ScaleY="-1" />
                                <TranslateTransform Y="1" />
                            </TransformGroup>
                        </VisualBrush.RelativeTransform>
                    </VisualBrush>
                </Rectangle.Fill>
            </Rectangle>

下面的方块。

<Rectangle Margin="5,0,16,25" Name="rectangle2" Stroke="Black" StrokeThickness="0.1" Height="41" VerticalAlignment="Bottom">
                <Rectangle.Fill>
                    <VisualBrush Visual="{Binding ElementName=textBox1}">
                        <VisualBrush.RelativeTransform>
                            <TransformGroup>
                                <ScaleTransform ScaleX="1" ScaleY="-1" />
                                <TranslateTransform Y="1" />
                            </TransformGroup>
                        </VisualBrush.RelativeTransform>
                    </VisualBrush>
                </Rectangle.Fill>
            </Rectangle>

这里的代码就是上面节课讲的。

image

隐隐约约可以看得到效果。

如果我们把这三个放到一个grid里面,那么就相当于封装了这三个方块。

<Rectangle HorizontalAlignment="Right" Margin="0,26,0,39" Name="rectangle3" Stroke="Black" Width="184">
            <Rectangle.Fill>
                <VisualBrush Visual="{Binding ElementName=grid1}" />
            </Rectangle.Fill>
        </Rectangle>

这里我们给绑定到原始放三个方块的Grid。

image

看右边的那个就是一个绑定的巨型块。

结束。



 


 

转载于:https://www.cnblogs.com/dingli/archive/2010/12/14/1906022.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值