SiteMapPath: cambiar el título y el enlace del último eslabón de la cadena
-
14-10-2019 - |
Pregunta
Hola ¿Puede usted aconsejar por favor cualquier solución? Tengo un control SiteMapPath y en lugar de la funcionalidad por defecto como
Home > Accounts > User Account
donde "Cuenta de Usuario" se refiere a ~ / UserAccount.aspx
Me gustaría sobrescribir el último nodo para mostrar información sobre un usuario actual, es decir .:
Home > Accounts > John White
y "John White" se refiere a ~ / UserAccount.aspx? Id = 111?
Solución
Sí, usted tiene que heredan de la XmlSiteMapProvider
y anular su método BuildSiteMap
. Aquí se puede manipular cualquier nodo que desee en tiempo de ejecución, que luego aparecen en su control SiteMapPath
.
public class MySiteMapProvider : XmlSiteMapProvider
{
...
public override SiteMapNode BuildSiteMap()
{
var node = base.BuildSiteMap();
var userAccountsNode = this.FindUserAccountsNode(node);
userAccountsNode.ReadOnly = false;
userAccountsNode.Title = ...;
userAccountsNode.Url = ...;
userAccountsNode.ReadOnly = true;
return node;
}
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow