c# - 为按钮设置背景和不透明度但不影响其内容

标签 c# wpf button background opacity

我正在使用 WPF,我想做的是设置按钮的不透明度和背景颜色,但我不想影响按钮内的内容。我尝试了几种方法,但遗憾的是没有用。

我发现了这种风格,我想应用类似的东西: enter image description here

这是我的数字键盘:(我正在尝试编辑 BTN 7):

enter image description here

如你们所见,不幸的是我无法在不影响内部内容的情况下设置按钮的不透明度。

这是我的 XAML 代码(关注 btn 7):

<StackPanel Height="50" Orientation="Horizontal" Margin="0,0,0,5">
                <Button  FontSize="15" FontWeight="Bold" x:Name="btn7" Foreground="#83D744" Click="btn7_Click" BorderBrush="#83D744" BorderThickness="0.5" Content="7" Width="80" RenderTransformOrigin="0.557,0.693" d:LayoutOverrides="HorizontalAlignment" Background="Black" Opacity="0.2" Margin="0,0,5,0" />
                <Button  FontSize="15" Foreground="Black" FontWeight="Bold" x:Name="btn8" Click="btn8_Click" Content="8" Width="80" Background="#FF50504F" Margin="0,0,5,0"/>
                <Button  FontSize="15" Foreground="Black" FontWeight="Bold" x:Name="btn9" Click="btn9_Click" Content="9" Width="80" d:LayoutOverrides="HorizontalAlignment" Background="#FF50504F"/>
</StackPanel>

所以谁能帮我解决这个问题.. 谢谢!

最佳答案

为用于背景的画笔添加透明度

黑色的十六进制代码是#000000

更改 alpha channel 使其半透明 (Background="#50000000") 并移除 Opacity="0.2"

<Button x:Name="btn7"
        FontSize="15" FontWeight="Bold" Foreground="#83D744" 
        Click="btn7_Click" 
        BorderBrush="#83D744" BorderThickness="0.5" 
        Content="7" Width="80" RenderTransformOrigin="0.557,0.693"
        d:LayoutOverrides="HorizontalAlignment" 
        Background="#50000000" Margin="0,0,5,0" />

关于c# - 为按钮设置背景和不透明度但不影响其内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40305348/

相关文章:

c# - 值不能为空。错误

java - 按钮 GridView 的滑动触摸界面

c# - 在C#.NET Dim语句中创建共鸣板不会变成蓝色

c# - 学习较低级别的计算

C#:WPF MVVM 命令绑定(bind)与事件回调

c# - 是否可以使用 Binding.DoNothing 取消 WPF 绑定(bind)到 Control.Template 属性?

javascript - 按钮类型 ="button"在 JavaScript 中意味着什么

c# - 按下并释放按钮时如何调用不同的方法?

c# - 将 ref 与列表一起使用以及列表如何保持更新

c# - 将 n xor 表达式翻译成 CNF?