自己的形式边框样式

时间:2012-12-10 17:44:54

标签: c# .net windows

我一直认为使用iTunes或Visual Studio 2012等程序的表单边框没有边框样式,按钮作为关闭按钮被绘制为图像。

Visual Studio 2012 Musicjet

但是,一旦我的Visual Studio没有响应并且边框更改为基本的Windows边框。

Windows

如何获得自己的表格边框?是否有可能在C#?

2 个答案:

答案 0 :(得分:3)

您正在看到“ghost窗口”,Windows窗口管理器创建的窗口可替换死窗口。您会在标题栏中看到“无响应”。那个窗口当然不会有相同的自定义样式,Windows无法知道如何正确地做到这一点。

您可以使用Spy ++实用程序查看其他应用的窗口属性。 VS2012实际上使用带标题栏的常规窗口样式。他们如何定制它是一个保密的秘密,我怀疑他们拦截WM_NCPAINT,这是一个相当困难的消息来实现自己。使用无边框窗口肯定更容易。

答案 1 :(得分:0)

继@Hans的帖子:

使用WPF,您可以将windowstyle设置为none,如下所示:

<Window WindowStyle="None">

然后你可以实现自己的按钮。