使用.NET 3.5。
如何以编程方式扩展/折叠AJAX折叠控制中包含的窗格?
我的页面将有几个手风琴控件,我希望能够通过一些按钮进行大规模扩展/折叠。
UPDATE1
我的最终代码解决方案如下所示:
<script language="javascript">
function collapse_all(flag)
{
if(flag==true)
{
var behavior = $get("<%=Accordion1.ClientID%>").AccordionBehavior;
behavior.set_SelectedIndex(-1);
}
else
{
var behavior = $get("<%=Accordion1.ClientID%>").AccordionBehavior;
behavior.set_SelectedIndex(0);
}
}
</script>
答案 0 :(得分:1)
您无法通过服务器端代码(VB.NET/C#)以编程方式扩展它们,因为窗格的扩展是在客户端代码(JavaScript)中完成的。如果我是你,我建议您查看JQuery库并使用他们的显示/隐藏功能来构建自定义手风琴控件以执行您想要的操作。 JQuery似乎不像“类似WebForm”,但你会发现它比AJAX Control Toolkit更灵活。
答案 1 :(得分:1)
你可以在javascript中找到accourdion控件并调用“set_SelectedIndex(-1)”
所以(使用jquery)
$("#<%=Accordion1.ClientID%>_AccordionExtender").set_SelectedIndex(-1)
如果你有一些,你可以自己做一切,或者使用其中一个jquery选择器来找到它们,手风琴必须设置为允许所有窗格关闭我相信(RequireOpenedPane = false)
答案 2 :(得分:1)
如果您将accordion控件放在asp.net ajax更新面板中,您可以通过将所选索引设置为零的代码隐藏轻松折叠所有窗格。