我正在尝试在WPF中创建一种进度条控件。它将是在每个步骤完成时填充的省略号。但是,我没有提出我认为干净的例子(最少的代码和浪费)。这就是我所拥有的:
<ItemsControl>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Ellipse Fill="Blue" Stretch="UniformToFill"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
然后,我想要两个依赖属性:
我想要的是TotalSteps = 14
然后会有14个椭圆,并且使用StepsCompleted
,数学转换器和椭圆的索引,填充将在触发器上起作用。但是,我无法找到一种方法来做到这一点,除非我创建一个用空白对象创建的虚拟列表,它将充当我的DataContext
......但是,这似乎是一种浪费。有没有办法根据数字填充模板,而不需要支持列表?
或者,我会接受一个覆盖进度条模板的解决方案。但是,我什么也没找到,所以用户控件似乎是最简单的