极品分享

C# WPF 做一个透明圆角界面

本文将讲述,如何用WPF做一个如下图的,半透明圆角界面。文章内容只针对程序员大大。

如果您不是做.NET的,就没什么参考价值了。我要做个善于分享的.NET程序员。

1-1_0b46f21fbe096b630b742da90f338744eaf8acde.jpg


1、首先在xaml中 设置<window >属性

Background="{x:Null}" WindowStyle="None" AllowsTransparency="True"

2、然后在xaml给<Grid>加一个<Border>。这个Border只用于只做透明效果,注意Border和Grid要在同一级。 <Window>的 content只能有一个元素,所以最外层用一个Grid把 Border和显示内容的Grid包裹起来,如图~

<Grid>
<Border CornerRadius="5" Margin="10" BorderThickness="2"  BorderBrush="White" Opacity="0.8">
  <Border.Effect>
  <DropShadowEffect ShadowDepth="0" Color="#FF414141" BlurRadius="8"/>     </Border.Effect> 
<Border Background="Black" Opacity="0.5" Margin="0" CornerRadius="5"/>
</Border>
<Grid>
<!--内容-->
</Grid>
</Grid>

1-2_c2cec3fdfc039245987aa8f58494a4c27c1e2578.jpg


3、经过以上步骤,透明效果已经出来了。但是将WindowStyle设置成None以后,界面就无法拖动了。

如何让界面可以拖动呢?可以给Window的MouseDown添加一个事件。事件里这样写。

if (e.LeftButton == MouseButtonState.Pressed)
{
   DragMove();
}


1-3_728da9773912b31b701abed08518367adbb4e1d1.jpg



2017-04-14 0 /
NET学习
/
标签: 

评论回复

回到顶部