none
capturar dato de un texbox que esta insertado en una grilla RRS feed

  • Pregunta

  • Esta es la grilla donde tengo el texbox, lo que necesito hacer es capturar este dato pero el codigo:

    dim txtboxmail as String = MailAdicional.Text

    Esta linea de condigo no sirve....

    Protected Sub GridView_BusquedaProveedor_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles GridView_BusquedaProveedor.PageIndexChanging GridView_BusquedaProveedor.PageIndex = e.NewPageIndex oBuscadorProv.PaginaActual = e.NewPageIndex oBuscadorProv.CargarGrilla() 'LlenaGrilla(True) End Sub

    CÓDIGO XML DONDE SE AGREGO EL TEXTBOX.

    ///////////////////////////

    <asp:TemplateField HeaderText="Datos Contacto"> <ItemTemplate> <asp:Label ID="lblEmailContacto" runat="server" Visible="true" EnableViewState="true"></asp:Label> <asp:TextBox ID="txtEmailContacto" runat="server" Visible="false" EnableViewState="true"></asp:TextBox> <br /> <br /> <%--<asp:Panel runat="server" ID="pnlEmailAdicional"> <asp:Label ID="lblEmailAdicional" runat="server" Text="Ingrese Email Adicional"></asp:Label> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <asp:TextBox runat="server" ID="txtEmailAdicional"></asp:TextBox> </asp:Panel>--%> </ItemTemplate> </asp:TemplateField>

    //////////////////////////////////////////////////////////////////////////////////////////

    EN DEFINITIVA NECESITO AYUDA COMO CAMPUTO EL MALDITO DATO QUE SE VA A INGRESAR EN EL TEXTOBOX ALOJADO ENLA GRILLA


    lunes, 14 de diciembre de 2015 3:02

Respuestas

  • hola

    Para acceder a un control dentro del grid se usa el FindControl()

    No se en que evento quieres tomar el valor pero si tienes la row puedes hacer

    Dim txtEmailAdicional As TextBox =  DirectCast(row.FindControl("txtEmailAdicional"), TextBox)

    por supuesto determianr la row depende de donde lo realices, puede ser por un index fijo

    GridViewRow row = GridView_BusquedaProveedor.Rows(index)

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 14 de diciembre de 2015 11:36

Todas las respuestas

  • hola

    Para acceder a un control dentro del grid se usa el FindControl()

    No se en que evento quieres tomar el valor pero si tienes la row puedes hacer

    Dim txtEmailAdicional As TextBox =  DirectCast(row.FindControl("txtEmailAdicional"), TextBox)

    por supuesto determianr la row depende de donde lo realices, puede ser por un index fijo

    GridViewRow row = GridView_BusquedaProveedor.Rows(index)

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 14 de diciembre de 2015 11:36
  • Muchas gracias por tu respuesta, pero tuve que realizar otro método y fue recorrer la grilla en la columna donde estaba el  campo, y de esa manera fue como pude capturar el dato, la soluciona fue realmente bien rebuscada...

    tu linea de código me arrojo un error que decía que no se encontraba declarado en la clase. pero ya igual lo he solucionado.

    tengo un problema con la Visibilidad del campo, sabes si existe alguna linea de código que que me ayude a dejar el textbox VISIBLE al momento de mostrar la grilla?,

    ya que cuando quiero ingresar el dato a ese campo, el texbox no se encuentra visible de un comienzo.

    lo que necesito es que este visible en todo momento,

    he usado la declaración del campo,

    Dim txtEmailAdicional As TextBox = DirectCast(row.FindControl("txtEmailAdicional"), TextBox)

    txtEmailAdicional.Visible = true

    pero aun asi me arroja error;

    "SE PRODUJO UN EXCEPCIÓN DE TIPO System.NullREferenceExeption en webPrivadoMandante.dll PERO NO SE CONTROLO EN EL COGIDO DEL USUARIO

    INFORMACIÓN ADICIONAL REFERENCIA A OBJETO NO ESTABLECIDA COMO INSTANCIA DE UN OBJETO.

    ayuda por favor!.

    miércoles, 16 de diciembre de 2015 19:08