我有一个DataRepeater,其中我有一个Label(LabelID)和一个包含RadioButtons的GroupBox。我将标签绑定到DataTable中的一列,我想要做的是让用户有机会在DataRepeater的每个单元格中选择一个单选按钮,然后根据进度我希望阅读用户的内容选择每个细胞。问题是,当用户开始选择单选按钮并向下滚动以选择DataRepeater中其他单元格的单选按钮时,先前的选择会更改,甚至用户尚未选择的选项也会被选中。我不知道为什么会这样。
以下是我所做的代码:
LabelID.DataBindings.Clear()
LabelID.DataBindings.Add(New Binding("Text", SomeDataTable, "SomeID"))
myDataRepeater.DataSource = SomeDataTable
我在Visual Studio拖放框架中添加了包含RadioButtons的GroupBox。
我尝试了以下绑定作为我认为可以解决问题的东西,但事实并非如此。
GroupBoxSelection.DataBindings.Clear()
GroupBoxSelection.DataBindings.Add(New Binding("Tag", SomeDataTable, "SomeID"))
我知道它与向上和向下滚动DataRepeater有关。因为我增加了DataRepeater的大小以摆脱ScrollBar,这种奇怪的行为不再发生。我无法保持DataRepeater那么大,所以我想找到另一个解决方案。
任何帮助将不胜感激?
答案 0 :(得分:0)
我不知道DataRepeater
如何正常工作,但如果重复使用控件来提高性能,我不会感到惊讶。如果是这样,那么您的控件可能会在移动时保留其值。您可能尝试的是创建一个用户控件来包含RadioButtons
并公开您可以绑定的单个属性。如果实例被重用,那么绑定应该像其他控件那样正确更新。