I assume you talk about
System.Windows.Forms
. Short answer is:
switch to WPF. In certain problems,
Forms
presents serious problems with transparency, and, where those problems exist, they are not going to become easier. Transparency at the level of control is the case.
Alternatively, you can use
Forms
with your own rendering not at the level of controls, but within one control, using
System.Drawing.Graphics
directly, in the handler of the event
Paint
or by overriding the virtual method
OnPaint
. At this level, transparency is not a problem at all. Please see also my past answers:
Drawing Lines between mdi child forms[
^],
capture the drawing on a panel[
^],
What kind of playful method is Paint? (DataGridViewImageCell.Paint(...))[
^].
—SA