DataGrid中的我的用户控件保持重置

时间:2013-01-08 12:21:58

标签: c# wpf xml

我是WPF的新手,所以也许我正在做一些非常愚蠢的事情。但是..
这也是我的第一个问题。

我在DataGrid中创建了一个自定义ProgressBar UserControl。 除了每次DataGrid刷新(重新排序列)UserControl重置,所有属性和依赖属性都更改为其默认值并再次调用构造函数时,所有工作都可以正常工作。看起来我的控件在每次DataGrid刷新时都被销毁并重新创建。

无论如何要避免这种行为?

我需要保留更改历史记录。 编辑:

<DataGridTemplateColumn Header="Progress" Width="*">
                <DataGridTemplateColumn.CellTemplate>
                    <DataTemplate>
                        <local:SegmentedProgressBar HorizontalAlignment="Stretch" SegmentedProgressCustomUpdate="{Binding SegmentedProgressCustomUpdate}"/>
                    </DataTemplate>
                </DataGridTemplateColumn.CellTemplate>
 </DataGridTemplateColumn>

1 个答案:

答案 0 :(得分:0)

听起来好像DataGrid再次是数据绑定。这将导致可能重新创建行,因此,用户控件将被重置。也就是说,如果您从某些外部数据中拉出进度条,则可以在行创建的事件中动态设置进度条控件的所有属性。