Hola Lista. Tengo un sitio en net 2008, en una de las paginas tengo un control asp:Calendar que al darle click a los distintos días ejecuta un SP y trae 1 registro de la Base de datos. Ese registro tiene 2 campos y el segundo lo muestro en un label.
Esto anda perfecto y hace que se puedan mostrar mensajes para distintos días. El problema surge cuando agrego un asp:UpdatePanel. Cuando hago click sobre el calendario la primera vez funciona perfectamente pero al darle por segunda vez (en otro día o semana) me sale el siguiente error: Linea: 605 Carácter: 13 Error: Sys.WebForms.PageRequestManagerServerErrorExeption: Argumento de devolución o de devolución de llamadas no valido. La valuación de eventos se habilita usando <Pages enableEventValidation="true"> en la conflagración o <%@ Pages enableEventValidation="true" %> en una pagina. Por motivos de seguridad, esta característica comprueba que los argumentos pasados a eventos de devolución o de devolución de llamadas se originan desde el control del servidor que inicialmente los proceso. si los datos son validos y son los que se esperaba, utilice el método ClientScriptManager.RegisterForEventValidation para registrar los datos de devolución o de devolución de llamadas para su valuación. Codigo: 0 Para colmo después que me da el error si recargo la pagina funciona perfectamente sin importar en cuantos links del calendar clikee. Ya probé de agregar enableEventValidation="true" pero sigue todo igual, busque en google y solo encuentro lo de enableEventValidation="true". Desde ya agradezco cualquier ayuda. Saludos Luis PD: Pego parte del código *En la Pagina:* <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> .................... <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:Calendar ID="Calendar1" runat="server" BackColor="#f1eed3" BorderColor="White" BorderWidth="1px" Font-Names="Verdana" Font-Size="9pt" ForeColor="Black" Height="190px" NextPrevFormat="ShortMonth" Width="196px" ondayrender="Calendar1_DayRender" onselectionchanged="Calendar1_SelectionChanged" onvisiblemonthchanged="Calendar1_VisibleMonthChanged" TitleFormat="Month" DayNameFormat="FirstTwoLetters" SelectWeekText="*" SelectionMode="DayWeek" CellPadding="2" EnableViewState="true"> <OtherMonthDayStyle ForeColor="#999999" /> <SelectedDayStyle BackColor="#FFFFCC" ForeColor="Black" BorderColor="Black" BorderStyle="Solid" BorderWidth="1px" /> <NextPrevStyle Font-Bold="True" Font-Size="8pt" ForeColor="#333333" VerticalAlign="Bottom" /> <DayHeaderStyle Font-Bold="True" Font-Size="8pt" /> <TitleStyle BackColor="#f1eed3" BorderColor="Black" BorderWidth="4px" Font-Bold="True" Font-Size="12pt" ForeColor="#333399" /> </asp:Calendar> <asp:Label ID="lblMsgTitulo" runat="server" Text=""></asp:Label> </ContentTemplate> </asp:UpdatePanel> *En archivo .cs* protected void Calendar1_SelectionChanged(object sender, EventArgs e) { // al seleccionar un dia Entidades.Usuario us = (Entidades.Usuario)Session["USLOG"]; if (Calendar1.SelectedDates.Count == 1) // Se selecciono solo 1 dia { this.SeleccionDia(us); } else { this.SeleccionSemana(us); } } protected void SeleccionSemana(Entidades.Usuario us) { BLLs.SemanasBLL oBS = new BLLs.SemanasBLL(); int nSemana = ((Calendar1.SelectedDates[0].DayOfYear / 7) + 1) ; Entidades.Semana s = oBS.GetXId(us.Id, Calendar1.SelectedDates[0].Year, nSemana); this.lblMsgTitulo.Text = "Semana Numero " + nSemana.ToString() + "<br />" + "<span style=\"font-size:10px\"> del " + Calendar1.SelectedDates[0].Date.ToShortDateString() + " al " + Calendar1.SelectedDates[6].Date.ToShortDateString() + "</span>"; this.lblMensaje.Text = Aplicacion.Servicios.Strings.HTMLTags(s.Texto); } protected void SeleccionDia(Entidades.Usuario us) { DateTime dt = Calendar1.SelectedDate; Entidades.Dia d = oDB.GetXId(us.Id, dt.Year, dt.Month, dt.Day); this.lblMsgTitulo.Text = dt.ToLongDateString(); this.lblMensaje.Text = Aplicacion.Servicios.Strings.HTMLTags(d.Texto); }