如果每一行的单选项是相同的(比如选项ABC),可以考虑增加三个表达式列ABC(boolean型),然后用一列值V来保存选项
然后datacolchanged事件里
dim s as string = "A,B,C"
select case e.datacol.name
case "A","B","C"
if e.datarow(e.datacol.name) = true then
systemready = false
for each c as string in s.split(",")
e.datarow(c) = false
next
e.datarow(e.datacol.name) = true
e.datarow("V") = e.datacol.name
systemready = true
end if
end select