Foros del Web » Programando para Internet » ASPX (.net) »

Controles creados dinámicamente desaparecen

Estas en el tema de Controles creados dinámicamente desaparecen en el foro de ASPX (.net) en Foros del Web. Saludos, quisiera saber por que unos controles que creo dentro de un Panel desaparecen cuando hay un postback y como puedo evitar que esto suceda ...
  #1 (permalink)  
Antiguo 18/10/2008, 16:19
 
Fecha de Ingreso: septiembre-2005
Ubicación: Medellin
Mensajes: 215
Antigüedad: 18 años, 7 meses
Puntos: 0
Controles creados dinámicamente desaparecen

Saludos, quisiera saber por que unos controles que creo dentro de un Panel desaparecen cuando hay un postback y como puedo evitar que esto suceda y que conserven su valor paraguardar su contenido en una Base de Datos.
Gracias
__________________
JU4N35
  #2 (permalink)  
Antiguo 18/10/2008, 16:27
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
Respuesta: Controles creados dinámicamente desaparecen

Controles creados por ti o controles comunes y corrientes de asp.net??

Si son controles asp.net como los estas agregando, tienes el EnableViewState=true cuando los agregas.

Si son controles tuyos implementaste las interfaces de IStateManager y un StateBag.

Si puedes poner mas código es mas fácil ver cual es tu problema.
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
  #3 (permalink)  
Antiguo 18/10/2008, 16:33
 
Fecha de Ingreso: septiembre-2005
Ubicación: Medellin
Mensajes: 215
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Controles creados dinámicamente desaparecen

con controles comunes de asp.net nada...unos Label, TxtBox y CheckBoxList.

Este es el código:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

If Not IsPostBack Then
TxtAño.Text = Año
TxtSem.Text = Sem

Dim dr As SqlDataReader
dr = drEnc()
If dr.Read Then
TxtCodEnc.Text = dr.GetValue(0)
TxtNomEnc.Text = dr.GetValue(1)
LblAñoSem.Text = TxtAño.Text & TxtSem.Text
End If
GenerarControles()
End If
End Sub

Private Sub GenerarControles()
Dim dr1 As SqlDataReader, dr2 As SqlDataReader, dr3 As SqlDataReader
Dim C1 As Integer, C2 As Integer, C3 As Integer, Pos As Integer
Panel1.Controls.Clear()
dr1 = drNomTema(Trim(TxtCodEnc.Text))
While dr1.Read
dr2 = drNomPReg(Trim(dr1.GetValue(0).ToString))
C1 += 1
Dim LblTema As New Label
LblTema.ID = "LblTema" & CStr(C1)
LblTema.Font.Name = "Arial"
LblTema.Font.Bold = True
LblTema.Text = dr1.GetValue(1).ToString
LblTema.Style("Position") = "Relative"
LblTema.Style("Top") = CStr(Pos) & "px"
LblTema.Style("Left") = "0px"
Panel1.Controls.Add(LblTema)
Pos += 25
While dr2.Read
dr3 = drNomCodPreg(Trim(dr2.GetValue(0).ToString))
C2 += 1
Dim LblPreg As New Label
LblPreg.ID = "LblPreg" & CStr(C2)
LblPreg.Font.Name = "Arial"
LblPreg.Font.Bold = True
LblPreg.Text = CStr(C2) & ". " & dr2.GetValue(1).ToString
LblPreg.Style("Position") = "Relative"
LblPreg.Style("Top") = CStr(Pos) & "px"
LblPreg.Style("Left") = "0px"
Panel1.Controls.Add(LblPreg)
If Not (dr2.GetValue(1).ToString = "Opinión") Then
Dim RblRes As New RadioButtonList
RblRes.ID = Trim(dr2.GetValue(0).ToString)
RblRes.Font.Name = "Arial"
RblRes.Style("Position") = "Relative"
RblRes.Style("Top") = CStr(Pos) & "px"
RblRes.Style("Left") = "0px"
RblRes.EnableViewState = True
While dr3.Read
C3 += 1
RblRes.Items.Add(dr3.GetValue(1).ToString)
Pos += 25
End While
Panel1.Controls.Add(RblRes)
RblRes = Nothing
Else
Dim TxtCom As New TextBox
TxtCom.ID = "TxtCom"
TxtCom.Font.Name = "Arial"
TxtCom.Style("Position") = "Relative"
TxtCom.Style("Top") = CStr(Pos) & "px"
TxtCom.Style("Left") = "0px"
Dim Largo As System.Web.UI.WebControls.Unit
Largo = 550
TxtCom.Width = Largo
Panel1.Controls.Add(TxtCom)
End If
LblPreg = Nothing
End While
LblTema = Nothing
End While
End Sub
__________________
JU4N35
  #4 (permalink)  
Antiguo 18/10/2008, 17:49
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
Respuesta: Controles creados dinámicamente desaparecen

y tu aspx tambien, para ver si el Panel tiene el EnabledViewState
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
  #5 (permalink)  
Antiguo 18/10/2008, 21:43
 
Fecha de Ingreso: septiembre-2005
Ubicación: Medellin
Mensajes: 215
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Controles creados dinámicamente desaparecen

siiiiiiiiiiii mirá...

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

<!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>Página sin título</title>
<style type="text/css">
.style1
{
width: 938px;
}
#Button1
{
width: 105px;
}
#BtnEnvInf
{
width: 105px;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div class="style1">

<asp:Image ID="Image1" runat="server" Height="70px" Width="555px" />
<br />
<br />
<br />
<br />
&nbsp;
<asp:Label ID="Label4" runat="server" Font-Names="Arial" Text="Encuesta:"></asp:Label>
&nbsp;&nbsp;&nbsp;&nbsp;
<asp:TextBox ID="TxtCodEnc" runat="server" Width="98px"></asp:TextBox>
<asp:TextBox ID="TxtNomEnc" runat="server" Width="492px"></asp:TextBox>
<br />
<br />
&nbsp;
<asp:Label ID="Label5" runat="server" Font-Names="Arial" Text="Consecutivo:"></asp:Label>
<asp:TextBox ID="TextBox7" runat="server" Width="100px"></asp:TextBox>
<asp:Label ID="Label6" runat="server" Font-Names="Arial"
Text="Formulario Ant.:"></asp:Label>
<asp:TextBox ID="TextBox8" runat="server" Width="100px"></asp:TextBox>
<asp:Label ID="Label8" runat="server" Font-Names="Arial" Text="Año:"></asp:Label>
<asp:TextBox ID="TxtAño" runat="server" Width="90px"></asp:TextBox>
<asp:Label ID="Label9" runat="server" Font-Names="Arial" Text="Semestre:"></asp:Label>
<asp:TextBox ID="TxtSem" runat="server" Width="55px"></asp:TextBox>
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp ;
<asp:Label ID="LblAñoSem" runat="server" Visible="False"></asp:Label>
<br />
<br />
&nbsp;
<asp:Label ID="Label1" runat="server" Font-Names="Arial" Text="Código:"></asp:Label>
&nbsp;
<asp:TextBox ID="TxtCod" runat="server" Width="109px"></asp:TextBox>
<asp:Label ID="Label2" runat="server" Font-Names="Arial" Text="Cédula:"></asp:Label>
<asp:TextBox ID="TxtCed" runat="server" Width="109px"></asp:TextBox>
<asp:TextBox ID="TxtNom" runat="server" Width="360px"></asp:TextBox>
<br />
<br />
&nbsp;
<asp:Label ID="Label7" runat="server" Font-Names="Arial" Text="Grupos:"></asp:Label>
&nbsp;&nbsp;&nbsp;
<asp:DropDownList ID="CmbGrupos" runat="server" AutoPostBack="True"
DataSourceID="dsGrupos" DataTextField="Cod_Grupo" DataValueField="Cod_Grupo"
Width="109px">
</asp:DropDownList>
<asp:TextBox ID="TxtMat" runat="server" Width="524px"></asp:TextBox>
<br />
<br />
&nbsp;
<asp:Label ID="Label10" runat="server" Font-Names="Arial" Text="Docente:"></asp:Label>
&nbsp;
<asp:TextBox ID="TxtCedPro" runat="server" Width="109px"></asp:TextBox>
<asp:TextBox ID="TxtNomPro" runat="server" Width="523px"></asp:TextBox>
<br />
<asp:SqlDataSource ID="dsGrupos" runat="server"
ConnectionString="<%$ ConnectionStrings:EncConnectionString %>"
SelectCommand="SELECT DISTINCT [Cod_Grupo] FROM [Est_Grupo] WHERE (([Cod_Est] = @Cod_Est) AND ([Año] = @Año))">
<SelectParameters>
<asp:ControlParameter ControlID="TxtCod" Name="Cod_Est" PropertyName="Text"
Type="String" />
<asp:ControlParameter ControlID="LblAñoSem" Name="Año" PropertyName="Text"
Type="Int16" />
</SelectParameters>
</asp:SqlDataSource>
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<asp:Button ID="CmdBus" runat="server" Height="32px" Text="Buscar" />
&nbsp;
<asp:Button ID="Button2" runat="server" Height="32px" Text="Limpiar"
Width="62px" />
&nbsp;
<asp:Button ID="CmdGuardar" runat="server" Height="32px" Text="Guardar"
Width="62px" />
<br />
<br />
<br />
<asp:Panel ID="Panel1" runat="server" EnableViewState="true" >
</asp:Panel>
<br />
<br />
<br />
<br />

</div>
</form>
</body>
</html>


no se que podrá ser o faltar o por no ser definidos con la página, por ser desde el comienzo...ni los valores alcanzo a recuperar...pss si me pudieras vos oa lguien ayudar pss se loa gradecería mucho
__________________
JU4N35
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 21:24.