none
rowupdating RRS feed

  • Pregunta

  • Hola:

    Tengo

        Sub actualizar1(ByVal s As Object, ByVal e As GridViewUpdateEventArgs) Handles gvvarios.RowUpdating
            Dim intid0 As Integer = e.Keys("id0")
            If Not Page.IsValid Then
                e.Cancel = True
            Else
                Dim gr As GridViewRow = s.Rows(e.RowIndex)
                If intid0 = 124 Then
                    'e.NewValues("campo0") = DirectCast(gr.Cells(2).Controls(3), TextBox).Text
                    Response.Write(DirectCast(gr.Cells(2).Controls(3), TextBox).Text)
                    Response.End()
                End If
            End If
        End Sub

    El gridview tiene

            <Columns>
                <asp:CommandField HeaderText="Edición" ValidationGroup="varios" ShowEditButton="true" EditText="Editar" ShowCancelButton="true" CancelText="Cancelar" />
                <asp:boundfield HeaderText="Descripción" DataField="descripcion" ReadOnly="true" SortExpression="descripcion" />
                <asp:TemplateField HeaderText="Campo" SortExpression="campo0">
                    <EditItemTemplate>
                        <b><asp:label ForeColor="Red" Text="*" runat="server" /></b> <asp:TextBox ID="txtcampo0" MaxLength="100" Text='<%# Bind("campo0") %>' runat="server" />
                        <asp:DropDownList ID="ddlpaises" Visible="false" DataSourceID="sqldspaises" DataTextField="pais" DataValueField="p0" runat="server" />
                        <asp:DropDownList ID="ddlregiones" Visible="false" DataSourceID="sqldsregiones" DataTextField="region" DataValueField="r0" runat="server" />
                        <asp:DropDownList ID="ddldias" Visible="false" runat="server" /> <asp:Label ID="lblraya1" Visible="false" Text="/" runat="server" /> <asp:DropDownList ID="ddlmeses" Visible="false" runat="server" /> <asp:Label ID="lblraya2" Visible="false" Text="/" runat="server" /> <asp:DropDownList ID="ddlanos" Visible="false" runat="server" />
                        <asp:DropDownList ID="ddltiposidentificaciones" Visible="false" DataSourceID="sqldstiposidentificaciones" DataTextField="tipo" DataValueField="ti0" runat="server" />
                        <asp:RequiredFieldValidator ForeColor="red" ValidationGroup="varios" ControlToValidate="txtcampo0" ErrorMessage="Campo obligatorio" Display="None" runat="server" />
                        <asp:CompareValidator ID="cvnumero" visible="false" ForeColor="red" ValidationGroup="varios" ControlToValidate="txtcampo0"  Type="Integer" Operator="DataTypeCheck" Display="None" ErrorMessage="Campo inválido" runat="server" />
                        <asp:CompareValidator ID="cvmoneda" visible="false" ForeColor="red" ValidationGroup="varios" ControlToValidate="txtcampo0" Type="Double" Operator="GreaterThan" Display="None" ValueToCompare="0" ErrorMessage="Campo inválido" runat="server" />
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:label ID="lblcampo0"  text='<%# Eval("campo0")%>' runat="server" />
                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>
    

    Quiero referenciar al control 3 de la celda 2, txtcampo0. Pero me muestra el valor antiguo, no el nuevo. ¿Cómo se hace?

    Gracias de antemano.


    • Editado volar.2014 jueves, 6 de agosto de 2015 13:35
    jueves, 6 de agosto de 2015 13:27

Respuestas

Todas las respuestas

  • hola

    pero no deberias definir cada control en una columnas diferente

    no entiendo como en la edicion puedes poner tantos combos en uan misma celda, eso es un pesimo diseño

    deberias poner un control por columns, porque cada columan es un dato concreto de la entidad

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 6 de agosto de 2015 13:44
  • Hola:

    Gracias Leandro.

    Pongo varios controles en una celda porque a veces ésta es un número otras veces un combo. Y para mostrarlo en las  misma columna.

    jueves, 6 de agosto de 2015 13:49
  • hola

    >>Pongo varios controles en una celda porque a veces ésta es un número otras veces un combo

    un consejo, si la edicion de la entidad es compleja y requiere controles dependientes no aconsejaria que edites sobre la row del grid

    selecciona la entidad y edita en controles por fuera

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 6 de agosto de 2015 13:53
  • Hola:

    Solucionado.

    Hago referencia al valor del combo no al campo

    Gracias

    • Marcado como respuesta volar.2014 jueves, 6 de agosto de 2015 13:57
    jueves, 6 de agosto de 2015 13:57
  • Hola:

    Gracias por el consejo. Lo pondré en práctica.

    jueves, 6 de agosto de 2015 14:30