对于asp.net radiobuttonlist:通过FindByValue获取列表项并设置Selected属性不起作用?

时间:2011-08-26 18:13:10

标签: asp.net radiobuttonlist selectedindexchanged selectedindex

可能是一个基本问题,但我有以下代码:

ListItem l = radiolist.Items.FindByValue(mediaTypeID.ToString());
if (l != null)
  l.Selected = true;
else
  radiolist.SelectedIndex = 0;

handleMediaTypeChanged();

在上面的代码中,我可以成功从radiobuttonlist中检索正确的项目,但是将项目设置为Selected是不起作用的。 SelectedIndexChanged事件不会触发,当我使用handleMediaTypeChanged()手动调用它时,radiobuttonlist不会反映更改的索引。如果不是这样,那么正确的方法是什么?

1 个答案:

答案 0 :(得分:1)

据我所知,SelectedIndexChanged事件只会在您从UI物理上更改索引时触发。

您可以尝试这样的事情:

ListItem l = radiolist.Items.FindByValue(mediaTypeID.ToString());

radioList.ClearSelection();
if (l != null)
    l.Selected = true;