2009-11-27 18 views
7

Tengo un panel de error que está oculto en una página si falla un error para manejar y mostrar errores con elegancia. Actualmente, solo estoy agregando los mensajes de error a una cadena y empujándolos a una etiqueta. Si tiene múltiples errores, esto se complica. Por lo tanto, me gustaría enviar cada error a un elemento de la lista en una lista desordenada con viñetas.¿Cómo se pueden generar elementos de la lista dinámicamente en una lista desordenada en ASP.NET?

¿Cómo puedo generar dinámicamente, a partir de un archivo vb codebehind, nuevos elementos de lista dentro de un elemento de lista sin orden?

Respuesta

14

por qué no utilizar un control BulletedList? Este control generará una lista desordenada para el cliente.

<asp:BulletedList ID="BulletedList" runat="Server" BulletStyle="NotSet"> 
</asp:BulletedList> 

A continuación, puede agregar los elementos de la lista programáticamente desde el código de atrás de esta manera.

BulletedList.Items.Add("Item1"); 

También puede lograr esto mediante la adición de runat='server' para hacer referencia al servidor UL etiqueta.

<ul id="uList" runat="server"> 
</ul> 

Luego, en el código de usar detrás de la propiedad InnerHtml agregar mediante programación LI etiquetas a los contenidos dentro de la apertura y cierre de UL etiquetas.

uList.InnerHtml += "<li>Item1</li>"; 
0

Puede usar una variable de nivel de página para contener los errores, como una lista o una matriz. A continuación, sólo escribir un método que hace algo como:

Private Sub WriteErrors() 
    lblErrors.txt = "<ul>" 
    For Each s as String in _myErrors 
    me.lblErrors.Text &= "<li>" & s & "</li>" 
    End For 
    lblErrors.Text &= "</ul>" 
End Sub 
Cuestiones relacionadas