Foros del Web » Programación para mayores de 30 ;) » .NET »

Un procedimiento no se ejecuta

Estas en el tema de Un procedimiento no se ejecuta en el foro de .NET en Foros del Web. Hola, tengo el siguiente código (que lo he reducido para mayor claridad). Se trata de llenar un datagrid con los archivos de un directorio y ...
  #1 (permalink)  
Antiguo 22/07/2004, 10:51
 
Fecha de Ingreso: enero-2002
Mensajes: 136
Antigüedad: 22 años, 3 meses
Puntos: 1
Un procedimiento no se ejecuta

Hola, tengo el siguiente código (que lo he reducido para mayor claridad). Se trata de llenar un datagrid con los archivos de un directorio y poder bajar o eliminar el archivo seleccionado. En el procedimiento correspondiente sólo puse un mensaje para ver que se ejecute. Lo cierto es que cuando en Sub Page_Load no chequeo IsPostBack (es decir el código se ejecuta siempre que se carga la página) el comando "FileDo" se ejecuta (me muestra la leyenda). Pero cuando chequeo IsPostBack (que así lo quiero) el "FileDo" no se ejecuta. Si alguien sabe, gracias.
Este es el código:

<% @Page Language = "VB" Debug="true" %>
<%@Import Namespace="System.Data"%>
<%@Import Namespace="System.IO"%>
<%@Import Namespace="System.IO.Directory"%>
<%@Import Namespace="System.IO.DirectoryInfo"%>

<Script Language="VB" Runat="Server">

Sub Page_Load(sender As Object, e As EventArgs)

if not IsPostBack then

dg1.visible = "true"
Dim wdir as String
wdir = "\Enterprise10"
Dim Dir As New System.IO.DirectoryInfo(server.mappath(wdir))
Dim DirInfo As System.IO.DirectoryInfo
Dim F As System.IO.FileInfo
Dim dt as DataTable = New DataTable()
dt.Columns.Add("FileName", Type.GetType("System.String"))
dt.Columns.Add("FileDate", Type.GetType("System.String"))
For Each F In Dir.GetFiles
dt.Rows.Add(new Object() {F.Name, F.CreationTime})
Next
dg1.DataSource = dt
dg1.DataBind()
end if
End Sub

Sub FileDo(src as Object, e as DataGridCommandEventArgs)
if (e.CommandSource.CommandName = "FileDelete") then
response.write("Leyenda para ver si ésto se ejecuta")
end if
End Sub

</Script>

<html>
<head>
<title>ASP.Net - Directorios y Archivos</title>
<META name="KeyWords" content="">
<META name="Description" content="">
<link rel="stylesheet" href="aspnet.css" type="text/css">
</head>
<body>
<div class="Title1">Lista de directorios</div>
<form id="Form1" runat="server">
<div align="center">

<asp:DataGrid runat="server" id="dg1" autogeneratecolumns=false OnItemCommand="FileDo"
width="75%" cellpadding=3 font-size="8pt" headerstyle-backcolor="#bbccdd"
headerstyle-font-bold enableviewstate=false>
<columns>
<asp:boundcolumn headertext="Nombre"
datafield="FileName" />
<asp:boundcolumn headertext="Fecha"
datafield="FileDate" />
<asp:buttoncolumn
text="Bajar a PC"
commandname="FileDown" />
<asp:buttoncolumn
text="Eliminar"
commandname="FileDelete" />
</columns>
</asp:datagrid>

</div>
</form>

</body>
</html>
  #2 (permalink)  
Antiguo 23/07/2004, 14:38
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Hola friend... por lo que veo no se ejecuta tu itemCommand ya que tu grid tiene la propiedad enableviewstate en false.. y cuando se hace el postback simplemente se pierde el viewstate y el grid tampoco se muestra.

Solo cambia ésto:
enableviewstate=false

por ésto:
enableviewstate=true

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 26/07/2004, 10:53
 
Fecha de Ingreso: enero-2002
Mensajes: 136
Antigüedad: 22 años, 3 meses
Puntos: 1
Gracias RootK, efectivamente anduvo bien. Creo que entre tantas pruebas que hice, había pasado por esa prueba; pero en fin, cuando uno anda perdido ...
Te comento que estoy estudiando a fondo .Net y me propuse un proyecto personal que me obligue a programar soluciones concretas.
Muchas Gracias.
  #4 (permalink)  
Antiguo 26/07/2004, 11:47
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cita:
Te comento que estoy estudiando a fondo .Net y me propuse un proyecto personal que me obligue a programar soluciones concretas.
Mucha suerte.

Por cierto.. ya tambien estás dentro del programa de Desarrollador de Cinco estrellas...está interesante.. el material de apoyo que te proporcionan es bueno para ir empezando.

Si alguien está en el proyecto DCE saben cuando va a salir la cuarta estrella?? es que ya tengo varios meses esperandola.

Salu2
  #5 (permalink)  
Antiguo 26/07/2004, 12:47
 
Fecha de Ingreso: enero-2002
Mensajes: 136
Antigüedad: 22 años, 3 meses
Puntos: 1
He leido sobre ese programa, pero no estoy dentro de él. Lo hago como una iniciativa personal. En realidad siempre he usado el mismo sistema de auto-aprendizaje.
  #6 (permalink)  
Antiguo 26/07/2004, 13:34
 
Fecha de Ingreso: abril-2003
Mensajes: 606
Antigüedad: 21 años
Puntos: 2
La cuarta estrella ya salio como desde hace 2 semanas ah y tambien la quinta. De hecho por default ya tienes al menos la 4a. al ser MCP. Ahora que la quinta no se si sea teniendo la MCAD o la MCSD. Je.

Saludos
  #7 (permalink)  
Antiguo 27/07/2004, 08:46
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Gracias por la info DotNetDeveloper, es que por lo regular me llegaba por correo el avance de las estrellas y ahorita precisamente acabo de checar la page y ya vi para la cuarta y quinta.

Cita:
De hecho por default ya tienes al menos la 4a. al ser MCP.
Acabo de hacer la solicitud, estoy en espera de la respuesta, haber que tal..

Salu2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:30.