我想在WPF中创建一种进度条控件。这将是每个步骤完成时填入的省略号。但是,我没有提出我认为是一个干净的例子(最小代码和浪费)。以下是我有:如何使用整数填充ItemsControl
<ItemsControl>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Ellipse Fill="Blue" Stretch="UniformToFill"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
然后,我想有两个依赖属性:
- TotalSteps
- StepsCompleted
我想是时候TotalSteps = 14
则会有使用StepsCompleted
,一个数学转换器和椭圆的索引,14个椭圆和填充将起作用。然而,我一直无法找到一种方法来做到这一点,除非我创建了一个虚拟列表,这个虚拟列表是由空白对象创建的,这些空白对象将作为我的DataContext
...但这看起来很浪费。有没有办法根据数字填充模板,而不需要支持列表?
另外,我会接受一个解决方案,它将是进度条模板的重载。不过,我什么也没找到,所以用户控制似乎最简单的
我觉得进度是有已经在WPF的信息。那么为什么重新发明轮子? – 2013-04-30 16:01:49
我会更新我的问题,但简短的回答是,这在目前的进度条中并不容易实现 – 2013-04-30 16:04:16
可能是一个网格,您可以将样式设置为在每个单元格中都有一个椭圆,然后绑定列的数量以便进度? – paul 2013-04-30 16:08:05