Retroceder   Foros del Web > Programación para sitios web > .NET > web forms

Respuesta
 
Herramientas Desplegado
Antiguo 01-may-2007, 21:47   #1 (permalink)
estlui está en el buen camino
 
Fecha de Ingreso: noviembre-2003
Mensajes: 98
Parsar datos entre componentes

Saludos a todos...

Tengo el siguiente codigo:

<script runat="server">

Protected Sub FormView1_pasardato(ByVal sender As Object, ByVal e As EventArgs)
Dim codigotextbox As TextBox = FormView1.FindControl("codigotextbox")
codigotextbox.Text = dd_cod.SelectedValue

End Sub
</script>


Lo que quiero hacer es pasar el valor seleccionado en un DropDownList a un TextBox que esta dentro de un formulario para que el usuario ya no tenga que digitar ese valor.

Al probar el codigo me indica:

Error de servidor en la aplicación '/amp'.
Referencia a objeto no establecida como instancia de un objeto.
Descripción: Excepción no controlada al ejecutar la solicitud Web actual. Revise el seguimiento de la pila para obtener más información acerca del error y dónde se originó en el código.

Detalles de la excepción: System.NullReferenceException: Referencia a objeto no establecida como instancia de un objeto.

Me marca el error en la linea:

Línea 9: codigotextbox.Text = dd_cod.SelectedValue


Porque sera?

Muchas gracias
estlui está desconectado   Responder Citando
Antiguo 01-may-2007, 22:02   #2 (permalink)
Yaraher tiene algunos puntos positivos de karma
 
Avatar de Yaraher
 
Fecha de Ingreso: abril-2007
Ubicación: Lima, Perú
Mensajes: 248
Enviar un mensaje por MSN a Yaraher Enviar un mensaje por Yahoo  a Yaraher Enviar un mensaje por Skype™ a Yaraher
Re: Parsar datos entre componentes

Puedes comprobar que estás colocando valores en el DropDownList y no sólo texto.

Si no es así, prueba con la propiedad SelectedText.

Y no olvides definir si la página que carga no es Postback, para no definir el valor cuando es la primera carga.

Suerte!
Yaraher está desconectado   Responder Citando
Antiguo 02-may-2007, 09:13   #3 (permalink)
estlui está en el buen camino
 
Fecha de Ingreso: noviembre-2003
Mensajes: 98
Re: Parsar datos entre componentes

Grecias Yaraher...

Pero no me sale!!!

Tengo esto:

<script runat="server">
Sub FormView1_pasardato(ByVal sender As Object, ByVal e As EventArgs)
Dim codigotextbox As TextBox = FormView1.FindControl("codigotextbox")
codigotextbox.Text = dd.SelectedValue
End Sub
</script>

y lo activo con esto:

<asp:FormView ID="FormView1" runat="server" DataSourceID="ObjectDataSource1" OnModeChanged="FormView1_pasardato" >

en esta linea:

codigotextbox.Text = dd.SelectedValue

lo he intentado con "dd.SelectedIndex" y "dd.SelectedItem" pero nada, me manda un error como si no existiera algun objeto.... yo ya lo revise muchas veces pero segun yo todo existe, a lo mejor no se hacer bien la referencia.

Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.

Source Error:


Line 7: Sub FormView1_pasardato(ByVal sender As Object, ByVal e As EventArgs)
Line 8: Dim codigotextbox As TextBox = FormView1.FindControl("codigotextbox")
Line 9: codigotextbox.Text = dd.SelectedValue
Line 10: End Sub
Line 11: </script>



Este es mi codigo de ejemplo:


Código:
<%@ Page Language="VB" debug="true"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<script runat="server">
    Sub FormView1_pasardato(ByVal sender As Object, ByVal e As EventArgs)
        Dim codigotextbox As TextBox = FormView1.FindControl("codigotextbox")
        codigotextbox.Text = dd.SelectedValue
    End Sub
</script>



<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
        &nbsp;<asp:DropDownList ID="dd" runat="server" AutoPostBack="True" DataSourceID="SqlDataSource2" DataTextField="codigo" DataValueField="codigo" >
        </asp:DropDownList><asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:Conn %>"
            ProviderName="<%$ ConnectionStrings:Conn.ProviderName %>" SelectCommand="SELECT [codigo] FROM [productos]">
        </asp:SqlDataSource>
        &nbsp;&nbsp;&nbsp;<br />
        <br />
        <br />
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="codigo"
            DataSourceID="SqlDataSource1">
            <Columns>
                <asp:BoundField DataField="codigo" HeaderText="codigo" ReadOnly="True" SortExpression="codigo" />
                <asp:BoundField DataField="descripcion" HeaderText="descripcion" SortExpression="descripcion" />
                <asp:BoundField DataField="empaque" HeaderText="empaque" SortExpression="empaque" />
                <asp:BoundField DataField="localizacion" HeaderText="localizacion" SortExpression="localizacion" />
            </Columns>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:Conn %>"
            ProviderName="<%$ ConnectionStrings:Conn.ProviderName %>" SelectCommand="SELECT [codigo], [descripcion], [empaque], [localizacion] FROM [productos] WHERE ([codigo] = ?)">
            <SelectParameters>
                <asp:FormParameter FormField="dd" Name="codigo" Type="Int32" />
            </SelectParameters>
        </asp:SqlDataSource>
        &nbsp;&nbsp;&nbsp;<br />
        <asp:FormView ID="FormView1" runat="server" DataSourceID="ObjectDataSource1" OnModeChanged="FormView1_pasardato" >
            <InsertItemTemplate>
                codigo:
                <asp:TextBox ID="codigoTextBox" runat="server"  Text='<%# Bind("codigo") %>'></asp:TextBox><br />
                lote:
                <asp:TextBox ID="loteTextBox" runat="server" Text='<%# Bind("lote") %>'></asp:TextBox><br />
                cantidad:
                <asp:TextBox ID="cantidadTextBox" runat="server" Text='<%# Bind("cantidad") %>'></asp:TextBox><br />
                kilos:
                <asp:TextBox ID="kilosTextBox" runat="server" Text='<%# Bind("kilos") %>'></asp:TextBox><br />
                <asp:LinkButton ID="InsertButton" runat="server" CausesValidation="True" CommandName="Insert"
                    Text="Insert"></asp:LinkButton>
                <asp:LinkButton ID="InsertCancelButton" runat="server" CausesValidation="False" CommandName="Cancel"
                    Text="Cancel"></asp:LinkButton>
            </InsertItemTemplate>
            <ItemTemplate>
                <br />
                <asp:LinkButton ID="NewButton" runat="server" CausesValidation="False" CommandName="New"
                    Text="New"></asp:LinkButton>
            </ItemTemplate>
        </asp:FormView>
        <br />
        <br />
        <br />
        <br />
        <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" InsertMethod="Insert"
            OldValuesParameterFormatString="original_{0}" SelectMethod="GetData" TypeName="DataSet1TableAdapters.lotesTableAdapter" >
            <InsertParameters>
                <asp:Parameter Name="codigo" Type="Int32" />
                <asp:Parameter Name="lote" Type="String" />
                <asp:Parameter Name="cantidad" Type="Int32"/>
                <asp:Parameter Name="kilos" Type="Int32" />                                
            </InsertParameters>            
        </asp:ObjectDataSource>
    </form>
</body>
</html>


Muchas pero muchas gracias!!!
estlui está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 02:04.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93