【问题标题】:C# Transparency Isn't Affecting PanelC# 透明度不影响面板
【发布时间】:2017-10-15 15:57:49
【问题描述】:

我有一个面板 (OverPanel),它位于表单的最前面。我将它用作输入表单/退出表单面板。在面板下方,还有其他我希望可见的控件,因此我将顶部的面板设置为透明。问题是,它并没有变得透明,而是坚持采用表单的颜色(控件)。这是表单的层次结构。

OverPanel 面板面板
rcmMenuPanel 面板
--- rcmMenuLabel 标签
rcmSetupPanel 面板
--- rcmSetupPanel 标签

我想要发生的是透明的 OverPanel 和显示的 rcmMenu 和设置面板,但发生的是,rcmMenu 和 rcmSetup 面板不会显示,并且 OverForm 的背景颜色是设置为透明时的表单颜色。我不希望发生这种情况,那么我该如何解决呢?

【问题讨论】:

  • 将BackColor设置为Transparent只是意味着显示父母的背景。这并不意味着真正的透明度。作为一个选项,看看这篇文章:Any trick to use opacity on a panel in Visual Studio Window Form?
  • @RezaAghaei 我试过那样做,但它不起作用。每当您切换颜色时,面板就会变得更加不透明。
  • 只需在需要时刷新面板。另见另一个例子here
  • @RezaAghaei 我发现了问题所在。不透明度设置为 0.5 而不是 0
  • 干得好 :) 我提供的第二个链接没有不透明度,默认情况下是透明的。

标签: c# winforms panel


【解决方案1】:

@Reza Aghaei 发给我的第一个链接有效!

这里是:https://stackoverflow.com/a/32402532/6804700

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-24
    • 1970-01-01
    • 1970-01-01
    • 2011-07-06
    • 2011-03-20
    • 2018-12-07
    • 2017-03-18
    • 2017-09-26
    相关资源
    最近更新 更多