以下是引用八婺在2009-5-31 14:57:00的发言:也可以这样。
Dim dst As WinForm.DataList = e.Sender
Dim dr as DataRow = e.Sender.Current
if e.Form.Controls("CheckBox1").Checked = true Then
dst.SetChecked(dst.Position,True)
Else
dst.SetChecked(dst.Position,false)
End If独立和模式窗口,这个功能要老六消灭5.25版本的bug才行。
[此贴子已经被作者于2009-5-31 14:58:45编辑过]
总是提示找不到选择框,估计是5月25号版本的Bug,期待贺老师尽快消灭此BUG。
另外,上述代码实现这个功能有一个小问题:就是当单选框选中的时候,因为是写在CurrentChanged事件中,所以不但鼠标拖动会自动选择,正常的变更行也会自动选择当前行,所以不太方便(正常的情况下应该是只选择拖动时的行,而不选择行变更经过的行)。需要把鼠标移动选择的行手工取消,或者反复切换选择框,不太方便。
所以,看有无用代码解决的办法。或者最好是贺老师给DataList加一个属性,就更方便了。同时,也建议,另一位老兄提的单选/多选的选项也给DataList加一个属性。
[此贴子已经被作者于2009-5-31 21:55:19编辑过]