WPF条形图,根据数据库更改进行更新

时间:2012-03-23 10:14:52

标签: c# wpf wpf-controls

目前我正在研究在我的WPF应用程序中制作条形图

虽然我不确定究竟有什么最好的方法可以解决这个问题:

  • WPF工具包(上次更新似乎很久以前,自2010年起)
  • 列出控件和样式/将其显示为条形图
  • ...?

布局将非常基本,但如果条形图实际上可以在运行时更新,那将是很好的。 通过SQL Server数据库值生成条形图的值。 bar char值始终为时间(HH:mm:ss)。

此外,将显示的4-5个条形图彼此相关(因此如果有任何其他条形条,如果有任何意义,条形图1不能超过100%)。 酒吧在24小时内显示。

对于每个条形图,还必须有一个计时器,实际上计算某个特定活动的运行时间(在单独的文本框中,它不需要包含在图表本身中)。

总而言之,1 bar将在单独的标签/文本块中包含其名称和值(hh:mm:ss)。除非建议有更好的解决方案。

目前我有布局,但它只包含网格,标签和重新布局。

感谢。

1 个答案:

答案 0 :(得分:1)

我就是这样做的: 我会使用一个简单的ItemsControl,因为它是最轻量级的控件,而对于ListView等,你将不得不关闭很多东西。 然后我会创建一个项目列表,其中每个项目代表一个条形,这些项目(在列表中)绑定到项目控件。每个项目都包含显示它所需的属性(实际值等)。

ItemsControl然后获得一个Datatemplate,其中高度和宽度绑定到项目的属性(使用转换器)以正确显示它们。

如果你想改变一些事物的显示方式,我会使用Canvas作为ItemsPanel,它允许你自由定位物品。

如果您使用ObservableCollection项目列表并且每个项目实现INotifyPropertyChanged,您可以轻松更新条形图的显示。