翼度科技»论坛 编程开发 .net 查看内容

WPF - 阴影效果

4

主题

4

帖子

12

积分

新手上路

Rank: 1

积分
12
基本属性:
属性说明描述
Color设置阴影效果背景色Color="Red"
ShadowDepth设置阴影的偏移度ShadowDepth="5"
Direction设置阴影的角度Direction="-45"
BlurRadius设置阴影模糊程度BlurRadius="20"
Opacity设置阴影透明度Opacity="1"
阴影效果介绍:在WPF中,你可以使用DropShadowEffect属性为控件添加阴影效果。DropShadowEffect是System.Windows.Media.Effects命名空间下的一个类,它提供了一种简单的方法来为控件添加阴影效果。下面是一个简单的示例,演示如何在WPF中为按钮添加阴影效果:
  1. <Button Width="100" Height="50">
  2.     <Button.Effect>
  3.         <DropShadowEffect ShadowDepth="10" BlurRadius="20" Color="Gray"/>
  4.     </Button.Effect>
  5.     Click Me
  6. </Button>
复制代码
在上面的示例中,我们为按钮的Effect属性设置了一个DropShadowEffect对象。ShadowDepth属性控制阴影的深度,BlurRadius属性控制阴影的模糊程度,Color属性控制阴影的颜色。你可以根据需要调整这些属性的值来获得不同的阴影效果。阴影效果应用范围:DropShadowEffect控件适用于需要添加阴影效果的各种场合,例如在按钮、标签、文本框等控件上添加阴影,以增强控件的立体感和视觉效果。此外,DropShadowEffect控件还可以用于实现阴影的动态效果,例如在鼠标悬停时改变阴影的颜色、大小等属性,以提供更丰富的交互体验。总之,DropShadowEffect控件是一种非常实用的工具,可以在WPF应用程序中增强视觉效果和交互体验阴影效果是UIElement类提供,所有继承自UIElement类的控件都可以实现阴影效果。

代码实例:  由于时间关系,代码实例都写在一起了。
  1. <Grid>
  2.    
  3.     <StackPanel>
  4.         
  5.         <Border Width="100" Height="50" Background="Orange">
  6.             
  7.             <Border.Effect>
  8.                
  9.                 <DropShadowEffect Color="Red" ShadowDepth="0"/>
  10.             </Border.Effect>
  11.         </Border>
  12.         
  13.         
  14.         <Border Margin="0 10" Width="100" Height="50" Background="Orange">
  15.             
  16.             <Border.Effect>
  17.                
  18.                
  19.                
  20.                
  21.                 <DropShadowEffect Color="Red" ShadowDepth="5" Direction="-45" BlurRadius="20" Opacity="1"/>
  22.             </Border.Effect>
  23.         </Border>
  24.         
  25.         
  26.         
  27.         <Border Margin="0 10" Width="100" Height="50" Background="Orange">
  28.             
  29.             <Border.Effect>
  30.                
  31.                 <DropShadowEffect Color="Red" ShadowDepth="5"/>
  32.             </Border.Effect>
  33.         </Border>
  34.         
  35.         <Border Width="100" Height="50" Background="Orange">
  36.             
  37.             <Border.RenderTransform>
  38.                
  39.                 <RotateTransform Angle="45"/>
  40.             </Border.RenderTransform>
  41.             
  42.             <Border.Effect>
  43.                
  44.                 <DropShadowEffect Color="Red" ShadowDepth="5" Direction="-45"/>
  45.             </Border.Effect>
  46.         </Border>
  47.         
  48.         <TextBlock Text="Hello">
  49.             <TextBlock.Effect>
  50.                
  51.                 <DropShadowEffect Color="Gray" ShadowDepth="0" BlurRadius="3"/>
  52.             </TextBlock.Effect>
  53.         </TextBlock>
  54.         
  55.         <Border Margin="0 60 0 0" Width="100" Height="30" BorderBrush="Green" BorderThickness="1" CornerRadius="10">
  56.             
  57.             <Border.Effect>
  58.                 <DropShadowEffect Color="Red" ShadowDepth="0" Direction="-45" BlurRadius="5" Opacity="1"/>
  59.             </Border.Effect>
  60.             <TextBlock Text="Hello" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  61.         </Border>
  62.         
  63.         
  64.         <Border Margin="0 10 0 0" Width="100" Height="30" BorderBrush="Green" BorderThickness="1" CornerRadius="10"
  65.                 Background="White">
  66.             
  67.             <Border.Effect>
  68.                 <DropShadowEffect Color="Red" ShadowDepth="0" Direction="-45" BlurRadius="5" Opacity="1"/>
  69.             </Border.Effect>
  70.             <TextBlock Text="Hello" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  71.         </Border>
  72.         
  73.         <Grid Margin="0 10 0 0">
  74.             
  75.             <Border  Width="100" Height="30" BorderBrush="Green" BorderThickness="1" CornerRadius="0"
  76.     ClipToBounds="True">
  77.                
  78.                 <Border.Effect>
  79.                     <DropShadowEffect Color="Red" ShadowDepth="0" Direction="-45" BlurRadius="5" Opacity="1"/>
  80.                 </Border.Effect>
  81.             </Border>
  82.             
  83.             <TextBlock Text="Hello" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  84.         </Grid>
  85.         
  86.         <Grid Margin="0 10 0 0">
  87.             
  88.             <Border  Width="100" Height="30" BorderBrush="Green" BorderThickness="1" CornerRadius="10">
  89.                
  90.                 <Border.Clip>
  91.                     
  92.                     <RectangleGeometry Rect="0 0 100 30" RadiusX="10" RadiusY="10"/>
  93.                 </Border.Clip>
  94.                
  95.                 <Border.Effect>
  96.                     <DropShadowEffect Color="Red" ShadowDepth="0" Direction="-45" BlurRadius="5" Opacity="1"/>
  97.                 </Border.Effect>
  98.             </Border>
  99.             
  100.             <TextBlock Text="Hello" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  101.         </Grid>
  102.     </StackPanel>
  103. </Grid>
复制代码
 效果展示:

 
 

来源:https://www.cnblogs.com/wjygxjz/archive/2023/09/04/17676029.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具