none
User Control RRS feed

  • Pregunta

  • Buen día tengo la siguiente consulta verán tengo un user control en donde cargo todo el tema de ubigeo en dropdownlist:

    - Países
    - Departamentos
    - Provincias
    - Distritos
    - Áreas

    Hasta aquí no tengo ningún problema todo funciona bien. El problema es que yo tengo un formulario donde registro personas, edito su información y la elimino. Para editar la información de las personas tengo un método que carga los datos en unos textbox puedo editar la información sin problemas. El tema va que cuando selecciono algún país se refresca toda la página y se pierden los datos que había cargado en los textbox. Estuve buscando algún tipo de sugerencia pero encontré nada concreto si tienen alguna idea de como evitar esto les agradecería mucho me respondieran. Por cierto estoy usando el IsPostBack en mi formulario y en el user control.

    martes, 29 de enero de 2013 21:18

Respuestas

  • Hola,

    Puedes solucionar el problema con el UpdatePanel. Este lo tienes en el toolbox de visual studio. Por ejemplo

    <asp:UpdatePanel ID=”UDP” runat=”server” UpdateMode=”Always”>
    <ContentTemplate>
        //aqui va el user control
    </ContentTemplate>

    </asp:UpdatePanel>

    Esto hara que el postback sea parcial, es decir que al refrescar los datos del usercontrol no te afectara lo demas. Recuerda agregar el toolkit Script manager a la pagina para que te funcione, este viene con el ajax toolkit

    Sino lo tienes lo puedes descargar de Ajax toolkit

    Saludos,



    Jason Ulloa
    Mi Blog San José, Costa Rica

    • Marcado como respuesta José Barba martes, 29 de enero de 2013 23:23
    martes, 29 de enero de 2013 21:50
  • Encontre la solución dentro del web.cofig agregué lo siguiente:

      <system.web>
        <pages buffer="true"
             masterPageFile = "~/Site.master"
             enableEventValidation="false">
        </pages>
      </system.web>

    • Marcado como respuesta José Barba martes, 29 de enero de 2013 23:06
    martes, 29 de enero de 2013 23:06

Todas las respuestas

  • Hola,

    Puedes solucionar el problema con el UpdatePanel. Este lo tienes en el toolbox de visual studio. Por ejemplo

    <asp:UpdatePanel ID=”UDP” runat=”server” UpdateMode=”Always”>
    <ContentTemplate>
        //aqui va el user control
    </ContentTemplate>

    </asp:UpdatePanel>

    Esto hara que el postback sea parcial, es decir que al refrescar los datos del usercontrol no te afectara lo demas. Recuerda agregar el toolkit Script manager a la pagina para que te funcione, este viene con el ajax toolkit

    Sino lo tienes lo puedes descargar de Ajax toolkit

    Saludos,



    Jason Ulloa
    Mi Blog San José, Costa Rica

    • Marcado como respuesta José Barba martes, 29 de enero de 2013 23:23
    martes, 29 de enero de 2013 21:50
  • Dime yo estaba poniendo el updatepanel en el user control que cree pero cuando lo ejecutaba desde mi formulario habia un conflicto con el postback:

    Error en tiempo de ejecución de Microsoft JScript: Sys.WebForms.PageRequestManagerServerErrorException: Invalid postback or callback argument.  Event validation is enabled using <pages enableEventValidation="true"/> in configuration or <%@ Page EnableEventValidation="true" %> in a page.  For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them.  If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation

    Ese es el error que me daba. Hay alguna forma de controlar ese error?

    martes, 29 de enero de 2013 22:00
  • Encontre la solución dentro del web.cofig agregué lo siguiente:

      <system.web>
        <pages buffer="true"
             masterPageFile = "~/Site.master"
             enableEventValidation="false">
        </pages>
      </system.web>

    • Marcado como respuesta José Barba martes, 29 de enero de 2013 23:06
    martes, 29 de enero de 2013 23:06