找到多个具有相同 ID“_header”的控件。FindControl 要求控件具有唯一的 ID。错误的解决方法!
找到多个具有相同 ID“_header”的控件。FindControl 要求控件具有唯一的 ID。错误的解决方法! 收藏
今天想用Accordion做点东西,可是总是出错,本想放弃Accordion!
找到多个具有相同 ID"_header"的控件。FindControl 要求控件具有唯一的 ID
可不想对控件认输,就慢慢的试,结果发现:只是有些版本的AjaxControlToolkit中的Accordion会出现这种情况!
解决方法:
加上红色代码段就行了
1foreach(.........){
2AccordionPane apPane =new AccordionPane();
3 Label ltTitle =new Label();
4 ltTitle.Text = model.TopName.Trim();
5 ltTitle.ID = model.ID.ToString().Trim();
6//该版的AjaxControlToolkit必须加上pane的id否则会报错ID不唯一(其他版本则不会)
7//apPane.ID = model.ID.ToString().Trim();
8 apPane.HeaderContainer.ID model.ID.ToString().Trim();
9 =
10foreach (DataRow node in dsManager.Tables[0].Rows)
11 {
12if (model.ID.ToString().Trim() == node["topID"].ToString().Trim())
13 {
14 HyperLink hlContent =new HyperLink();
15 hlContent.ID = node["accessID"].ToString().Trim();
16 hlContent.Text = node["accessName"].ToString().Trim();
17 hlContent.NavigateUrl = node["accessPath"].ToString().Trim();
18apPane.ContentContainer.ID=int.Parse(node["accessID"].ToString().Trim()) + i.ToString();
19
20 apPane.ContentContainer.Controls.Add(hlContent);
21 i++;
22 }
23 }
24 apPane.HeaderContainer.Controls.Add(ltTitle);
25 accdAdmin.Panes.Add(apPane);
26 }
27//为True时为渐变效果(在伸缩时颜色变淡,伸缩完后颜色恢复正常)
28//accdAdmin.FadeTransitions = true;
29//在选择某一标题后伸展和收缩过渡动画所持续的时间;
30//accdAdmin.TransitionDuration = 1200;
加上红色代码段就行了!初次发表文章,只是想和大家分享一下!O(∩_∩)O~
猜你喜欢
转载自bowld.iteye.com/blog/1572151
今日推荐
周排行