Mensaje dentro de Foro C#

Responder 
#1 - 10/04/2013 11:50:38 Reporta abuso | Link Permanente
Borja
Usuario no registrado
Evitar refresco Completo

Responder Citar

uenos días tengo este código

<asp:UpdatePanel ID="upExperiencias" runat="server" UpdateMode="Always">
<ContentTemplate>
                   <table id="Table1" width="100%">
                       <tr>
                            <td id="Td1">
                                <table width="100%">
                                    <tr><td>&nbsp</td></tr>
                                    <tr>
                                        <td width="10%">
                                            <asp:HiddenField runat="server" ID="hiddenID" />
                                            <asp:Label runat="server" ID="lblDescInfoItems" Text="Descripción" CssClass="texto"></asp:Label>
                                        </td>
                                        <td width="30%">
                                            <asp:TextBox ID="tbDescripionExperiencia" runat="server" Width="85%"></asp:TextBox>
                                            <asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ValidationGroup="Experiencias"
                                            ErrorMessage="***" CssClass="letraRoja" ControlToValidate="tbDescripionExperiencia">
                                        </asp:RequiredFieldValidator>
                                        </td>
                                        <td width="10%">
                                            <asp:Label runat="server" ID="lblDiasExp" Text="Noches" CssClass="texto"></asp:Label>
                                        </td>
                                        <td width="15%"> 
                                            <asp:TextBox ID="tbDuracionDias" runat="server" Width="20%" onkeypress="return soloNumeros(event);"></asp:TextBox>
                                            <asp:RegularExpressionValidator ID="RegularExpressionValidator9" runat="server" ControlToValidate="tbDuracionDias" ErrorMessage="Numérico" CssClass="letraRoja"
                                            ValidationGroup="Experiencias" ValidationExpression="^\d+$" />
                                        </td>
                                        <td width="35%">&nbsp</td>
                                    </tr>
                                    <tr>
                                        <td width="10%">
                                            <asp:Label runat="server" ID="lblPrecioExp" Text="Precio" CssClass="texto"></asp:Label>
                                        </td>
                                        <td width="30%">
                                            <asp:TextBox ID="tbPrecioExp" runat="server" Width="20%"></asp:TextBox>
                                            <asp:RegularExpressionValidator id="RegularExpressionValidator12" runat="server" ControlToValidate="tbPrecioExp" ValidationGroup="Experiencias"
                                            ValidationExpression="^[0-9]{1,5}(\,[0-9]{0,2})?$" CssClass="letraRoja" ErrorMessage="Formato XX,XX" />
                                        </td>
                                        <td width="10%">
                                            <asp:Label runat="server" ID="lblHorasExp" Text="Horas" CssClass="texto"></asp:Label>
                                        </td>
                                        <td width="15%"> 
                                            <asp:TextBox ID="tbDuracionHoras" runat="server" Width="20%" onkeypress="return soloNumeros(event);"></asp:TextBox>
                                            <asp:RegularExpressionValidator ID="RegularExpressionValidator10" runat="server" ControlToValidate="tbDuracionHoras" 
                                            ValidationGroup="Experiencias" ErrorMessage="Numérico" CssClass="letraRoja" ValidationExpression="^\d+$" />
                                        </td>
                                        <td width="35%">
                                            <asp:Button ID="btnInsertarExp" runat="server" Text="Insertar" OnClick="btnInsertarExperiencia_Click" ValidationGroup="Experiencias"/>&nbsp&nbsp
                                        </td>
                                    </tr>
                                    <tr>
                                        <td width="10%">
                                            <asp:Label runat="server" ID="Label15" Text="Info Número" CssClass="texto"></asp:Label>
                                        </td>
                                        <td width="30%">
                                            <asp:DropDownList ID="ddlNumInfo" runat="server" Width="30%"></asp:DropDownList>
                                            <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" CssClass="letraRoja" ValidationGroup="Experiencias"
                                                    InitialValue="0" ErrorMessage="Obligatorio" ControlToValidate="ddlNumInfo">
                                                </asp:RequiredFieldValidator>
                                        </td>
                                        <td width="10%">
                                            <asp:Label runat="server" ID="lblMinutosExp" Text="Minutos" CssClass="texto"></asp:Label>
                                        </td>
                                        <td width="15%"> 
                                            <asp:TextBox ID="tbDuracionMinutos" runat="server" Width="20%" onkeypress="return soloNumeros(event);"></asp:TextBox>
                                            <asp:RegularExpressionValidator ID="RegularExpressionValidator11" runat="server" ControlToValidate="tbDuracionMinutos" CssClass="letraRoja"
                                            ValidationGroup="Experiencias" ErrorMessage="Numérico" ValidationExpression="^\d+$" />
                                        </td>
                                        <td width="35%">&nbsp</td>
                                    </tr>

                                    <tr>
                                        <td colspan="5">
                                            <asp:GridView ID="gvExperiencias1" runat="server" Width="100%" CssClass="GridView"
                                                AutoGenerateColumns="false" AllowPaging="True" PageSize="10" DataKeyNames="ID" HeaderStyle-CssClass="GridCabecera"
                                                onrowcommand="gvExperiencias1_RowCommand"
                                                AllowSorting="False" ShowHeader="True" CellPadding="0" CellSpacing="0">
                                                <Columns>
                                                    <asp:BoundField ItemStyle-Width="30%" DataField="DESCRIPCION" ItemStyle-CssClass="texto"  HeaderText="DESCRIPCION" HeaderStyle-CssClass="GridCabeceraWidthNormal"/>
                                                    <asp:BoundField ItemStyle-Width="10%" DataField="DIAS" ItemStyle-CssClass="texto"  HeaderText="DIAS" HeaderStyle-CssClass="GridCabeceraWidthNormal"/>
                                                    <asp:BoundField ItemStyle-Width="10%" DataField="HORAS" ItemStyle-CssClass="texto"  HeaderText="HORAS" HeaderStyle-CssClass="GridCabeceraWidthNormal"/> 
                                                    <asp:BoundField ItemStyle-Width="10%" DataField="MINUTOS" ItemStyle-CssClass="texto"  HeaderText="MINUTOS" HeaderStyle-CssClass="GridCabeceraWidthNormal"/>
                                                    <asp:BoundField ItemStyle-Width="20%" DataField="DURACIONESPECIAL" ItemStyle-CssClass="texto" HeaderStyle-CssClass="GridCabeceraWidthNormal" HeaderText="DURACIÓN ESPECIAL"/>
                                                    <asp:BoundField ItemStyle-Width="20%" DataField="PRECIO" ItemStyle-CssClass="texto"  HeaderText="PRECIO" HeaderStyle-CssClass="GridCabeceraWidthNormal"/> 
                                                </Columns>
                                            </asp:GridView>
                                        </td>
                                    </tr>

  </table>
                    </ContentTemplate>
                </asp:UpdatePanel>


Y luego en el RowDataBound del GridView:

protected void gvExperiencias1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            try
            {
                // Si es una fila de datos
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    // añade al evento onclick la acción de RowCommand seleccionar con el valor del control del datakeyname correspondiente
                    e.Row.Style.Add("cursor", "pointer");
                    e.Row.Attributes.Add("onclick", Page.ClientScript.GetPostBackEventReference((GridView)sender, "Seleccionar$" + ((GridView)sender).DataKeys[e.Row.RowIndex].Value.ToString(),));
                }
            }
            catch (Exception ex)
            {
                Response.Redirect("Error.aspx?Mensaje=" + ex.Message.Replace("\n", " "));
            }
        }

La cosa es que esto aun estando dentro del updatePanel me genera un refresco completo de la página, sabrías que tengo que hacer para que solo se actualizar el update panel, he leido muchas cosas por Internet pero ninguna acaba de funcionar.

Un saludo y muchas gracias.

Volver arriba