• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
要想人前显贵,必定人后受罪。
博客园    首页    新随笔    联系   管理    订阅  订阅
效果和可视化对象

1、可视化对象。

Visual类是抽象类,所以不能创建该类的实例,相反,需要使用继承自Visual类的某个类,包括UIElement类,最有用的派生类是DrawingVisual类,该类继承自ContainerVisual类,为使用DrawingVisual类绘制内容,需要调用DrawingVisual.RenderOpen()方法,该方法返回一个可用于定义可视化内容的DrawingContext对象,绘制完毕后,需要调用DrawContext.Close()方法。

2、效果。

WPF提供了可应用于任何元素的可视化效果,效果的目标是提供一种简便的声明式方法,从而改进文本、图像、按钮以及其他控件的外观。不是写自己的绘制绘制代码,而是使用某个继承自Effect的类(在System.Windows.Media.Effects名称空间中),以获得模糊、阴影等效果。效果类如下:

效果类
名称 说明 常用属性
BlurEffect 模糊元素中内容 Radius、KernelType、RenderingBias
DropShadowEffect 在元素背后添加矩形阴影 BlurRadius、Color、Direction、Opacity
ShaderEffect 应用像素着色器 PixelShader

 

 

 

 

 

2.1)、BlurEffect类。

BlurEffect类用于模糊元素内容。

xaml代码: 

<StackPanel>
    <Button Padding="30" FontSize="20" Margin="10" Content="我是没有模糊的Button"></Button>
    <Button Padding="30" FontSize="20" Margin="10" Content="我是第一个模糊的Button(Radius=2)">
        <Button.Effect>
            <BlurEffect Radius="3"></BlurEffect>
        </Button.Effect>
    </Button>
    <Button Padding="30" FontSize="20" Margin="10" Content="我是第二个模糊Button(Radius=5)">
        <Button.Effect>
            <BlurEffect Radius="5"></BlurEffect>
        </Button.Effect>
    </Button>
</StackPanel>

效果图:

2.2)、DropShadowEffect类。

 DropShadowEffect类用于在元素背后添加轻微的偏移阴影。DropShadowEffect类常用属性如下:

<StackPanel>
    <TextBlock Text="我是没有被修饰的TextBlock元素" FontSize="20"></TextBlock>
    <TextBlock FontSize="20" Text="我是TextBlock元素">
        <TextBlock.Effect>
            <DropShadowEffect Color="Red" ShadowDepth="30" Opacity="0.5"></DropShadowEffect>
        </TextBlock.Effect>
    </TextBlock>
</StackPanel>

效果图:

End! 

posted on 2018-04-20 13:52  行走的蜗牛哦  阅读(414)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3