Nuevo sitio

Nos mudamos a www.f5run.com.ar

miércoles, 12 de enero de 2011

Seleccionar dos veces el mismo nodo en un treeview de ASP.Net

Si en página ASP.Net con un treeview, capturamos el evento OnSelectedNodeChanged, nos vamos a encontrar con un problema si seleccionamos dos veces el mismo nodo: Se realiza el postback pero el evento no se dispara.

Esto ocurre porque al seleccionar un nodo, el TreeView "recuerda" en su ViewState que dicho nodo fue seleccionado. Al hacer click en el mismo, este no disparará el evento, porque el nodo no ha cambiado.

¿Travalenguas? Un poco, cierto. Pero no tanto.

La solución:
En el evento SelectedNodeChanged agregar la siguiente línea:


(TreeView)sender.SelectedNode.Selected = false;

O su equivalente en C#

CType(sender, TreeView).SelectedNode.Selected = False

No hay comentarios.: