C#透明边框为无边框forms

我正在创建一个无边框表单,我想为它添加自定义边框。 但是,当我为表单添加背景时,它不能很好地显示,并且它不是透明的。

这就是我想用作我的边框: 截图

当我为Form设置Form的透明度时,阴影消失了,我不知道该怎么做。

有一种方法可以使用半透明(alpha)图像作为WinForms中的表单背景,如本文所述: 一个可爱的金鱼桌面宠物(使用alpha-PNG和GDI +) 。

它使用本机互操作将图像与桌面混合。

另外,请查看pinvoke.net上的UpdateLayeredWindow函数(User32.dll) 。 还有一个如何使用它的例子。

[编辑]

pinvoke.net上还有一个关于Mike Swanson关于同一主题的博客文章的链接。 它使用与上述链接中描述的相同的代码,但它是一个VS项目,它完全符合OP的要求:具有半透明PNG图像作为背景的初始forms。

好吧所以我有点作弊,但我所做的只是简单地覆盖CreateParams来绘制阴影,即使它是一个无边框窗口。 它完全符合我的要求所以我选择了它。
感谢您的帮助!