Сделать фон формы прозрачным - PullRequest
11 голосов
/ 10 июля 2011

Как сделать фон прозрачным на моей форме?Возможно ли это в C #?

Заранее спасибо!

Ответы [ 5 ]

32 голосов
/ 10 июля 2011

Вы можете установить BackColor вашей формы на необычный цвет (скажем, Color.Magenta), а затем установить свойство формы TransparencyKey на тот же цвет. Затем установите FormBorderStyle на None.

Конечно, это просто и быстрое решение. Края элементов управления ужасны, вам нужно постоянно менять цвет фона новых элементов управления, которые вы добавляете (если это кнопки или что-то в этом роде) и целый ряд других проблем.

Это действительно зависит от того, чего вы хотите достичь. Что это? Если вы хотите сделать виджет вроде вещей, есть гораздо лучшие способы. Если вам нужны закругленные углы или пользовательский фон, есть гораздо лучшие способы. Поэтому, пожалуйста, предоставьте больше информации, если TransparencyKey не совсем то, что вы имели в виду.

14 голосов
/ 10 июля 2011

Поместите в конструктор формы следующее:

public Form1()
{
    this.TransparencyKey = Color.Turquoise;
    this.BackColor = Color.Turquoise;
}

Примечание. Этот метод не позволяет нажимать на форму.

4 голосов
/ 10 июля 2011

Обновление :

Как: дать вашему элементу управления прозрачный фон

устарело : КакСоздать прозрачные формы Windows :

Примечание : поскольку прозрачные формы поддерживаются только в Windows 2000 или более поздней версии, формы Windows будут полностью непрозрачными при запуске в старых операционных системах.системы, такие как Windows 98, независимо от значения, установленного для свойства Opacity.

1 голос
/ 21 июля 2012

Простое решение для получения прозрачного фона в winform - переписать метод OnPaintBackground следующим образом:

protected override void OnPaintBackground(PaintEventArgs e)
{
//empty implementation
}

(Обратите внимание, что base.OnpaintBackground (e) удален из функции)

0 голосов
/ 28 августа 2018

Я использую этот код

this.TransparencyKey = (BackColor);

Просто добавьте эту строку в конструктор под InitializeComponent ();

Источник:

http://mishelshaji.co.in/2017/creating-a-transparent-window-in-windows-form-application/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...