C # как сделать Windows 7 Aero Winform (размытое стекло)?

как сделать что-то подобное

Эффект стекла Windows Forms, сделайте ImageBox прозрачным

Я использую VS 2010


person Data-Base    schedule 04.11.2010    source источник
comment
Я нашел этот code.msdn.microsoft.com/WindowsAPICodePack, звучит просто, как протестировать его сейчас , Как вы думаете?   -  person Data-Base    schedule 04.11.2010


Ответы (3)


Если все, что вам нужно, это стандартный эффект стекла (включая размытие), ознакомьтесь с этой статьей:

http://www.codeproject.com/KB/vista/AeroGlassForms.aspx

По сути, все, что вы делаете, - это расширяете рамку окна (которая уже имеет эффект стекла) в клиентскую область. Вы должны вызвать API DWM, поставляемый с Windows Vista или более поздней версии, с помощью пары методов P / invoke, поскольку он не встроен в .NET Framework.

РЕДАКТИРОВАТЬ: если вам нужен больший контроль над эффектом размытия, вы можете более конкретно изучить DwmEnableBlurBehindWindow из DWM API, хотя я сам этим не пользовался.

person Cody Gray    schedule 04.11.2010
comment
Я нашел этот code.msdn.microsoft.com/WindowsAPICodePack, и он кажется легким, что вы считать? - person Data-Base; 04.11.2010
comment
Я никогда этим не пользовался. Думаю, я только что приобрел привычку использовать свои собственные библиотеки для такого рода вещей до того, как MS выпустила какой-либо пакет кода. Выглядит солидно и обязательно стоит попробовать. Хотя вы можете подумать о том, чтобы просто скопировать соответствующий код вместо импорта всей библиотеки вещей, которые вы не используете. - person Cody Gray; 05.11.2010

Взгляните на это:

http://msdn.microsoft.com/en-us/library/aa969512(VS.85).aspx

Массив MARGINS похож на поля на странице HTML. Первый пример в MSDN дает поля для эффекта стекла высотой 25 пикселей в нижней части окна.

person Evan Mulawski    schedule 04.11.2010

Этот учебник по MS довольно прост для понимания и использует C #.

person Liviu Mandras    schedule 04.11.2010