渐变不透明度不起作用(WPF)

时间:2018-06-12 08:25:18

标签: c# wpf

我的应用在画布上有一个带有渐变的文字,我会移动它并更改不透明度

textblock.Foreground = new SolidColorBrush(
    Color.FromArgb((Byte)opacitiycounter, 255, 255, 0));

效果很好 - 但适用于SolidColorBrush。我自己进入的挑战是改变给定渐变的不透明度:

public Points(TextBlock t, GradientBrush color) {
    color.Opacity = opacitiycounter;
    t.Foreground = color;
}

不透明度功能似乎不起作用,我找不到另一种方法可以控制给定的渐变不透明度,我是否需要每次使用旧值创建全新的渐变并在每个点更改alpha ?如果是这样的话我怎么能复制渐变?

编辑: 我正在尝试在WPF中动态编辑现有渐变。

1 个答案:

答案 0 :(得分:3)

来自MSDN

  

Opacity属性的值表示为介于0.0和1.0之间的值。

所以这应该有效:

color.Opacity = (double)opacitycounter / 255;