Bonjour, j' ai cree un sitemap et j'ai ajoute un ajax accordion a ma page mais rien ne s'affiche, veuillez m'aidez
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 <form id="form1" runat="server"> <asp:ScriptManager ID="ScriptManager1" runat="server" EnableScriptLocalization="true"></asp:ScriptManager> <div> <asp:Accordion ID="Accordion1" runat="server" SelectedIndex="0" FadeTransitions="true" FramesPerSecond="60" TransitionDuration="75" AutoSize="None" RequireOpenedPane="true" Width="99%" SuppressHeaderPostbacks="true" HeaderCssClass="AccordionHeaderCssClass" HeaderSelectedCssClass="accordionHeaderSelected" onitemdatabound="Accordion1_DataBound"> <HeaderTemplate> <div class="accordionHeader"> <a href="<%# Eval("url") %>"> <%#Eval("title")%></a> </div> </HeaderTemplate> <ContentTemplate> <div class="accordionContent"> <table> <asp:Repeater ID="Repeater1" runat="server"> <ItemTemplate> <tr> <td id="AccordionSideBarItem"> <a href="<%# ((System.Web.SiteMapNode)Container.DataItem).Url %>"> <%# ((System.Web.SiteMapNode)Container.DataItem).Title %></a> </td> </tr> </ItemTemplate> </asp:Repeater> </table> </div> </ContentTemplate> </asp:Accordion> <asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" ShowStartingNode="False" /> </div> </form>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { SiteMapDataSourceView siteMapView = (SiteMapDataSourceView)SiteMapDataSource1.GetView(string.Empty); SiteMapNodeCollection nodes = (SiteMapNodeCollection)siteMapView.Select(DataSourceSelectArguments.Empty); Accordion1.DataSource = nodes; Accordion1.DataBind(); } } protected void Accordion1_DataBound(object sender, AjaxControlToolkit.AccordionItemEventArgs e) { if (e.ItemType == AjaxControlToolkit.AccordionItemType.Content) { AjaxControlToolkit.AccordionContentPanel cPanel = e.AccordionItem; System.Web.UI.WebControls.Repeater rptr = (Repeater)cPanel.Controls[1]; SiteMapNode sNode = (System.Web.SiteMapNode)((AjaxControlToolkit.AccordionItemEventArgs)e).AccordionItem.DataItem; System.Web.SiteMapNodeCollection childNodes = sNode.ChildNodes; if (childNodes != null && childNodes.Count > 0) { rptr.DataSourceID = null; rptr.DataSource = childNodes; rptr.DataBind(); } } }et dans le webconfig :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <?xml version="1.0" encoding="utf-8" ?> <siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" > <siteMapNode title="Accueil" url="Accueil.aspx"> <siteMapNode title="Peter" url=""> <siteMapNode title="Section 1a" url="Default.aspx" description="" /> <siteMapNode title="Section 1b" url="D.aspx" description ="" /> </siteMapNode> <siteMapNode title="Lois" url=""> <siteMapNode title="Section 2a" url="A.aspx" description ="" /> <siteMapNode title="Section 2b" url="F.aspx" description ="" /> </siteMapNode> <siteMapNode title="Stewie" url=""> <siteMapNode title="Section 3a" url="R.aspx" description ="" /> <siteMapNode title="Section 3b" url="Default2.aspx" description ="" /> </siteMapNode> </siteMapNode> </siteMap>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <siteMap defaultProvider="XmlSiteMapProvider" enabled="true" > <providers > <clear/> <add name="XmlSiteMapProvider" type="System.Web.XmlSiteMapProvider, System.Web,Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" siteMapFile="web.sitemap" securityTrimmingEnabled="true"/> </providers > </siteMap >
Partager