【问题标题】:Disable mixing of colors in LinearGradientBrush in WPF在 WPF 中的 LinearGradientBrush 中禁用颜色混合
【发布时间】:2018-08-24 08:00:15
【问题描述】:

我有一个图表应用程序,我在其中根据某些实体的值显示它们的频率分布。我在 BarSeries(Telerik) 中显示图表。 我使用 LinearGradientBrush 根据每个实体在某个桶中的权重为 Bar 着色。颜色对于一个实体来说是唯一的。 LinearGradientBrush 根据其功能完美地工作,但我的要求是需要为单独的实体突出显示单独的颜色,因此不需要混合颜色。 有没有办法在 WPF 中实现这一点?

【问题讨论】:

  • 你能给我们看一张截图,说明什么是有效的,什么是期望的输出?
  • @ShivaniKatukota 我找不到上传图片的选项...

标签: c# .net wpf telerik


【解决方案1】:

这实际上比较容易做到,你所要做的就是得到两个你想要的颜色,然后把颜色的最后一点放在下一个颜色旁边。你会得到这样的东西

<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
    <LinearGradientBrush.RelativeTransform>
        <TransformGroup>
            <ScaleTransform CenterY="0.5" CenterX="0.5"/>
            <SkewTransform CenterY="0.5" CenterX="0.5"/>
            <RotateTransform Angle="-90" CenterY="0.5" CenterX="0.5"/>
            <TranslateTransform/>
        </TransformGroup>
    </LinearGradientBrush.RelativeTransform>
    <GradientStop Color="#FFBD1717" Offset="0"/>
    <GradientStop Color="#FF970EB6" Offset="1"/>
    <GradientStop Color="#FFBD1717" Offset="0.299"/>
    <GradientStop Color="#FF175BBD" Offset="0.3"/>
    <GradientStop Color="#FF089722" Offset="0.79"/>
    <GradientStop Color="#FF175BBD" Offset="0.567"/>
    <GradientStop Color="#FF089722" Offset="0.568"/>
    <GradientStop Color="#FF970EB6" Offset="0.791"/>
</LinearGradientBrush>

【讨论】:

  • @kedarK 没问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-07-26
  • 2019-05-30
  • 2011-08-29
  • 2020-06-17
  • 2020-12-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多