首页 新闻 会员 周边 捐助

动态添加radiobuttonlist控件触发事件。

0
悬赏园豆:30 [已解决问题] 解决于 2011-05-13 23:15
protected void Page_Load(object sender, EventArgs e)
{
.....
SqlDataReader dr1
= sqlcmd.ExecuteReader();
while (dr1.Read())
{
//根据数据库情况循环添加的radiobuttonlist ......
list.SelectedIndexChanged += new EventHandler
(list_SelectedIndexChanged);
//注册事件 }
//每个radiobuttonlist后面有一个textbox
}
void list_SelectedIndexChanged(object sender, EventArgs e)
{
if (list.SelectedValue.ToString().Trim() == "基本满意" || list.SelectedValue.ToString().Trim() == "不满意")
{
txt.Visible
= true; //根据选择的值,textbox是否显示
}
else
{
txt.Visible
= false;
}
}

现在的情况是每次点击radiobuttonlist,只有最后一个radiobuttonlist旁边的textbox会显示。

问题补充:

                        
金威的主页 金威 | 初学一级 | 园豆:50
提问于:2011-05-11 09:44
< >
分享
最佳答案
0

代码不是很全,我也只是猜测!

1.循环添加的radiobuttonlist 是不是每次都是新的?

2. 注册的方法:void list_SelectedIndexChanged(object sender, EventArgs e)
{
     
if (list.SelectedValue.ToString().Trim() == "基本满意" || list.SelectedValue.ToString().Trim() == "不满意")
   {
         txt.Visible
= true;
     }
     
else
   {
        txt.Visible
= false;
     }
}

这个方法中的list,和txt分别指的什么?是公用对象吗?

收获园豆:30
Michelle 米雪儿 | 菜鸟二级 |园豆:209 | 2011-05-11 17:05
1,循环添加的radiobuttonlist 都是新的,就比如考试卷子,每个题下面生成一个radiobuttonlist,题是数据库循环出来的。
2,list就是radiobuttonlist list = new RadioButtonList();动态生成的radiobuttonlist控件。
txt是textbox txt=new textbox()动态生成的控件。当选择radiobuttonlist中的值为基本满意或不满意,傍边的txt就会出现用来填写原因的。
金威 | 园豆:50 (初学一级) | 2011-05-11 17:11
动态生成的radiobuttonlist控件都叫list的只有一个吗?动态生成的textbox 控件也只有一个吗? 每个题下面生成一个radiobuttonlist显然是有多个的,我认为应该应该从sender获取,radiobuttonlist list =sender as radiobuttonlist;
Michelle 米雪儿 | 园豆:209 (菜鸟二级) | 2011-05-12 10:33
单击每个radiobuttonlist,只有最后那个radiobuttonlist旁边的textbox出现。跟radiobuttonlist好象一个原理。是怎么回事。上面那个你回答的很对,分给你,嘿嘿
金威 | 园豆:50 (初学一级) | 2011-05-12 13:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册