Rovnocenným účinkem zakázkového SiteMapResolve pro SiteMapDataSource

hlasů
0

Přidáním vlastní popisovač události SiteMapResolve, mohu aktualizovat sitemap URL za běhu, nějakou logiku, která definuji.

To je v pořádku pro ovládací prvky SiteMapPath, které vypadají, že použití této funkce SiteMapResolve ... ale chci, aby se dosáhlo podobného výsledku pro ovládací prvek Menu ASP.NET, který používá SiteMapDataSource. Změnou uzly s psovodem SiteMapResolve nemá žádný vliv.

Mohl by někdo místo mě správným směrem? zdraví: D

edit: zdrojové kódy jsem odstranil všechno zbytečné a zůstal jsem s tímto - musím být nedorozumění co do činění se strukturou menuItemCollecton, ale je to stále prázdná.

web.sitemap


<?xml version=1.0 encoding=utf-8 ?>
<siteMap xmlns=http://schemas.microsoft.com/AspNet/SiteMap-File-1.0 >
<siteMapNode url=default.aspx title=Homepage  description=Home>
    <siteMapNode url=secondpage.aspx title=Page 2 />
</siteMapNode>
</siteMap>

default.aspx

<%@ Page Language=VB AutoEventWireup=false CodeFile=Default.aspx.vb Inherits=_Default %>

<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>

<html xmlns=http://www.w3.org/1999/xhtml>
<head runat=server>
    <title></title>
</head>
<body>
    <form id=form1 runat=server>
    <div>
        <asp:Menu runat=server ID=menu DataSourceid=dsSiteMap />
        <asp:SiteMapDataSource ID=dsSiteMap runat=server />
        <asp:Label runat=server id=lbMenuCount />
    </div>
    </form>
</body>
</html>

Default.aspx.vb


Partial Class _Default Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
lbMenuCount.text = menu.Items.Count End Sub End Class

Položena 30/06/2009 v 12:03
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
0

Děkuji vám za vaše ukazatelů Muhammad, ale myslím, že jsem popraskané problém.

Myslím, že menuItemCollection vyhledá pouze staticky definovaných bodů (tedy v kódu v menu) wheras jsem odkazují na XML zdroj dat - tak Mohamedův řešení nefunguje

Jsem vyřešil problém tím, že umístí svůj kód do události menu_MenuItemDataBound - a jsem dostat výsledky, které chci.

Díky za veškerou pomoc!

Odpovězeno 30/06/2009 v 17:13
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more