“如何绘制多个”;“堆栈”;在WPF的单列中

“如何绘制多个”;“堆栈”;在WPF的单列中,wpf,Wpf,我需要创建一个能够显示动态数据的视图,类似于下面的模型图像。每一行可以被视为由三部分组成,其中左侧和右侧部分由可变数量的矩形组成,中间部分是一个数字。中间添加的行数将保持相同,而随着时间的推移,左、右部分将被动态更新(增加矩形的宽度和增加新的矩形),并且处理更多的数据。 每个矩形的宽度需要根据矩形表示的数字计算,例如,每“第10个值/数量/体积”对应一个像素 我的问题是,解决这个问题的好方法是什么?WPF中是否有一些笔刷可以轻松解决此问题?是否应为每行的每一侧使用动态数量的矩形?如果是,如何计算

我需要创建一个能够显示动态数据的视图,类似于下面的模型图像。每一行可以被视为由三部分组成,其中左侧和右侧部分由可变数量的矩形组成,中间部分是一个数字。中间添加的行数将保持相同,而随着时间的推移,左、右部分将被动态更新(增加矩形的宽度和增加新的矩形),并且处理更多的数据。 每个矩形的宽度需要根据矩形表示的数字计算,例如,每“第10个值/数量/体积”对应一个像素

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

性能并不是一个真正的问题(尽管我很想了解一些需要考虑的问题)


您可以使用LinearGradiantBrush对任何基本体进行多色填充。诀窍是让你的步子双梯度停止。即0=蓝色,0.75=蓝色,0.75=红色,1=红色。这将为您提供硬颜色过渡,并且不会产生任何渐变效果。

您可以使用LinearGradiantBrush对任何基本体进行多色填充。诀窍是让你的步子双梯度停止。即0=蓝色,0.75=蓝色,0.75=红色,1=红色。这将为您提供硬颜色过渡,并且不会产生任何渐变效果。

您可以使用LinearGradiantBrush对任何基本体进行多色填充。诀窍是让你的步子双梯度停止。也就是说,0=蓝色,0.75=蓝色,0.75=红色,1=红色。@SledgeHammer噢。如果这能消除画笔的“线性”,它将解决很多问题。我会试试看。我得说,听起来这应该是一个回复,而不是一个评论,这样我就可以把它标记为一个答案,以防它像我希望的那样工作。好吧,我做了一个答案。是的,它起作用了。它实际上是由微软某处记录的。。。我一直在用它。你可以用它做一些非常棘手的事情:)。你可以用LinearGraditBrush多色填充任何原语。诀窍是让你的步子双梯度停止。也就是说,0=蓝色,0.75=蓝色,0.75=红色,1=红色。@SledgeHammer噢。如果这能消除画笔的“线性”,它将解决很多问题。我会试试看。我得说,听起来这应该是一个回复,而不是一个评论,这样我就可以把它标记为一个答案,以防它像我希望的那样工作。好吧,我做了一个答案。是的,它起作用了。它实际上是由微软某处记录的。。。我一直在用它。你可以用它做一些相当棘手的事情:)。