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

标签 c# wpf

我的应用程序在 Canvas 上有一个带有渐变的文本,我将其移动并更改不透明度

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 中动态编辑现有渐变。

最佳答案

来自MSDN :

The value of the Opacity property is expressed as a value between 0.0 and 1.0.

所以这应该有效:

color.Opacity = (double)opacitycounter / 255;

关于c# - 渐变不透明度不起作用 (WPF),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50812531/

相关文章:

c# - 免费的 XML 控件(WPF 或 Windows 窗体)

WPF 覆盖 DataGrid

c# - Linq 查询和预期结果 -- 不同字段

c# - PresentationFramework.dll 中出现“System.Reflection.TargetInvocationException”

c# - 是否有执行一系列超时的模式?

c# - 在 IE 扩展中显示本 map 标

c# - 如何使用 user32.dll 捕获鼠标离开事件

c# - wpf 如何知道设置 Content 属性

c# - 映射超过 7 种类型的 Dapper Multimapping,System.ArgumentException

c# - 如何动态更改上传文件夹