如何使用整数填充ItemsControl

时间:2013-04-30 15:59:21

标签: c# wpf xaml .net-4.0

我正在尝试在WPF中创建一种进度条控件。它将是在每个步骤完成时填充的省略号。但是,我没有提出我认为干净的例子(最少的代码和浪费)。这就是我所拥有的:

<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然后会有14个椭圆,并且使用StepsCompleted,数学转换器和椭圆的索引,填充将在触发器上起作用。但是,我无法找到一种方法来做到这一点,除非我创建一个用空白对象创建的虚拟列表,它将充当我的DataContext ......但是,这似乎是一种浪费。有没有办法根据数字填充模板,而不需要支持列表?

或者,我会接受一个覆盖进度条模板的解决方案。但是,我什么也没找到,所以用户控件似乎是最简单的

1 个答案:

答案 0 :(得分:1)

我已按照此链接中的信息制作了一个步骤进度条

Implementing a wizard progress control in WPF