【问题标题】:How to draw multiple "stacks" in single column in WPF如何在 WPF 的单列中绘制多个“堆栈”
【发布时间】:2019-01-15 20:26:16
【问题描述】:

我需要创建一个能够显示类似于下面样机图像的动态数据的视图。每一行可以认为由三部分组成,其中左右部分由可变数量的矩形组成,中间部分是一个数字。一旦添加了行,中间的数字将保持不变,而左右部分将随着时间的推移和越来越多的数据处理而动态更新(矩形的宽度增加并添加新的矩形)。

每个矩形的宽度需要根据矩形所代表的数字来计算,例如每“第10个值/数量/体积”对应一个像素。

我的问题是,解决这个问题的好方法是什么? WPF 中是否有一些 Brush 可以轻松解决此问题?是否应该为每行的每一边使用动态数量的矩形?如果是这样,如何计算每个矩形的位置和大小?

性能并不是一个真正的问题(虽然我很想就需要考虑的事情提供意见)。

【问题讨论】:

  • 您可以使用 LinearGradiantBrush 对任何图元进行多色填充。诀窍是让你的脚步双梯度停止。 IE。 0 = 蓝色,0.75 = 蓝色,0.75 = 红色,1 = 红色。
  • @SledgeHammer 哦。如果这摆脱了画笔的“线性”,它将解决很多事情。会试一试。不得不说,听起来这应该是回复而不是评论,这样我就可以将其标记为答案,以防它按我希望的那样工作。
  • 好的,我已经回答了。是的,它有效。它实际上是由微软在某处记录的......我一直在使用它。你可以用它做一些非常棘手的事情:)。

标签: wpf


【解决方案1】:

您可以使用 LinearGradiantBrush 对任何图元进行多色填充。诀窍是让你的脚步双梯度停止。 IE。 0 = 蓝色,0.75 = 蓝色,0.75 = 红色,1 = 红色。这将为您提供硬色过渡,并且没有任何渐变效果。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-30
    • 1970-01-01
    • 2019-07-22
    • 2021-01-09
    • 1970-01-01
    • 2019-05-06
    • 1970-01-01
    相关资源
    最近更新 更多