【问题标题】:Opaque controls on semi-transparent control半透明控件上的不透明控件
【发布时间】:2013-01-25 06:16:31
【问题描述】:

我有一个 StackPanel,里面有一些按钮。我希望 StackPanel 是半透明的,但按钮保持不透明。我已经在谷歌上搜索了一段时间,但仍然无法弄清楚这一点。我可以找到在半透明窗口上设置不透明控件的解决方案,但对于半透明控件上的不透明控件却找不到解决方案。

【问题讨论】:

    标签: wpf controls transparency


    【解决方案1】:

    当您说半透明 StackPanel 时,您肯定是指 StackPanel 的 Background。您始终可以将其设置为不透明度小于 1 的画笔。如果是纯色背景,则为 SolidColorBrush

    <StackPanel>
        <StackPanel.Background>
            <SolidColorBrush Color="Red" Opacity=".5"/>
        </StackPanel.Background>
        ...
    </StackPanel>
    

    或者您只需使用具有适当 alpha 值的颜色:

    <StackPanel Background="#7FFF0000">
    

    【讨论】:

    • 嗯,爸爸口香糖,这比我的解决方案好得多,我只是因为没有想到这一点而从感觉很聪明变成了有点愚蠢。
    【解决方案2】:

    啊哈!!我一问就自己想出来了(它带来了我在解决塞尔达谜题后总是得到的同样有益的感觉)。

    我没有将我的不透明控件放在半透明控件中,而是将不透明度设置为 0.5 的边框控件放置在网格中,然后将我的 StackPanel 添加到相同的网格位置,以便它只是覆盖它。

    【讨论】:

      猜你喜欢
      • 2011-04-16
      • 2011-07-09
      • 2016-02-15
      • 1970-01-01
      • 2011-12-14
      • 1970-01-01
      • 2023-03-31
      • 2018-12-26
      相关资源
      最近更新 更多