出于好奇,任何人都知道
ListControl.SelectedIndex = (int) <new valueIndex>VS
ListControl.SelectedValue = <new value>.ToString()我们在这里构建的自定义验证对象在一次扫描中处理所有验证时遇到了困难。我怀疑使用<SelectedValue = >会引发SelectedIndexChanged事件,即使值和索引在操作前后都保持不变。
(ListControl的值是以声明方式填充的...)
一如既往,感谢您的宝贵时间!
发布于 2008-11-14 15:32:11
除非用户更改了选定的值/索引并执行了回发,否则不应引发事件SelectedIndexChanged。
如果通过代码设置SelectedIndex或SelectedValue,则不会引发SelectedIndexChanged。
发布于 2008-11-14 15:47:28
我不想听起来很迟钝,但它确实是这样的!;)
该值以编程方式设置到列表中,使用:
((ListControl)FindControl.("controlName")).SelectedValue = {stringValue}SelectedIndexChanged事件被引发,并被我们的委托捕获,从而使输入无效。
操作前后的数值和索引都是一样的。问题是:在.Net查找值以找到好的值的运行时操作中,它是否有可能发生变化?
发布于 2009-12-27 00:37:19
假设RadioButtonList中每个ListItem的值是唯一的,因此SelectedValue表示该唯一值。SelectedIndex表示列表中项目的索引,而不考虑文本/值。只有当值实际发生变化时,才会触发SelectedIndexChanged。
https://stackoverflow.com/questions/290402
复制相似问题