Foros del Web » Programación para mayores de 30 ;) » .NET »

De moda el DataGrid

Estas en el tema de De moda el DataGrid en el foro de .NET en Foros del Web. Hola a amigos... He andado buscando y buscando algo dentro del foro y no he encontrado algo q me oriente un poco mas... Tengo un ...
  #1 (permalink)  
Antiguo 07/01/2007, 22:46
Avatar de magosc  
Fecha de Ingreso: diciembre-2006
Mensajes: 72
Antigüedad: 17 años, 4 meses
Puntos: 0
De moda el DataGrid

Hola a amigos...
He andado buscando y buscando algo dentro del foro y no he encontrado algo q me oriente un poco mas...

Tengo un DataGrid con los siguientes campos: cantidad, existencia, salida(es un textbox) y lo q necestio hacer, es q a traves del boton haga unos calculos con los valores de la fila, y q el resultado lo ponga en la fila q le corresponde al total, algo asi:

Cantidad--Existencia---- Salida--- Calcular -- total
100........... 200 ............TXT.. ---|Boton|-- 50
200........... 100 ............TXT.. ---|Boton|-- 95

Gracias!!
  #2 (permalink)  
Antiguo 08/01/2007, 09:34
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Re: De moda el DataGrid

OK, amigo, entonces tendrás que meter codigo en el evento DataGrid1_ItemCommand, Yo lo que haria es lo siguiente...

En el commandArgumente de tu boton "Calcular pondria esto:"
Código:
	<asp:DataGrid id="DataGrid1" runat="server" Width="280px" Height="72px" AutoGenerateColumns="False">
				<Columns>
					<asp:TemplateColumn>
						<ItemTemplate>
							<asp:Button id=Button1 runat="server" Text="Button" CommandArgument='<%# DataBinder.Eval(Container.DataItem,"Cantidad") + "$" + DataBinder.Eval(Container.DataItem,"Existencia") %>'>
							</asp:Button>
						</ItemTemplate>
					</asp:TemplateColumn>
				</Columns>
			</asp:DataGrid>
Enconces, en el Evento DataGrid1_ItemCommand, agarras lo que viene en el e.commandArgument, es decir, cuando ejecutes la pagina, y le des click al boton calcular...

Código:
    Private Sub DataGrid1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.ItemCommand
        Dim Cantidad As Double = e.CommandArgument.ToString.Split("$")(0)
        Dim Existencia As Double = e.CommandArgument.ToString.Split("$")(1)

        Dim MiTextBox As TextBox = e.Item.Cells(5).FindControl("TxtSalida")

        '//haces aqui tus operaciones
    End Sub
Espero te sirva... sino lo vemos mas a fondo,
me avisas

Saludos
  #3 (permalink)  
Antiguo 08/01/2007, 12:07
Avatar de magosc  
Fecha de Ingreso: diciembre-2006
Mensajes: 72
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: De moda el DataGrid

Muchas Gracias amigo Stream....

Pero no me funcionó, me generó este error:

Cita:
DataBinding: 'System.Data.DataRowView' does not contain a property with the name 'Cantidad'
Será que me da eso porque el datagrid no tiene ningun dato desde el inicio, es decir, lo unico que hago es arrastrar el datagrid y pegarlo en el formulario,solo le creo las dos columnas, una de Button y otra de textbox, luego por codigo es q le paso los parametros.


Cantidad--Existencia----
100........... 200 ...........


Soy algo novato en esto, y no he podido pasarle los datos directamene a un datagrid que tenaga alguna columna ya creada, ya que siempre me pone los datos en otras columnas,

.cant...........ext...........Cantidad---Existencia----
100........... 200 ..........................................


le quito la opcion de ArutoGenerateColumns y cuando le paso los parametro..me aparecen en blanco las casillas...

...........Cantidad---Existencia----
-------------------------------


Les agradezco su ayuda!!!

saludos....
  #4 (permalink)  
Antiguo 08/01/2007, 12:20
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Re: De moda el DataGrid

Se supone que tu dataset o tu tabla ya tienes cargados los datos y lo que vas a hacer es un .DataSource y un databind a tu datagrid...

Mejor pega aqui el codigo de tu datagrid y tu codigo behind para ver que show..
  #5 (permalink)  
Antiguo 08/01/2007, 15:21
Avatar de magosc  
Fecha de Ingreso: diciembre-2006
Mensajes: 72
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: De moda el DataGrid

Hola de nuevo....
Bueno pues aqui te va lo he hecho:

aqui te va:
Código PHP:
<html>

   <
script runat="server">
      Protected 
cnx As New SqlConnection("Data Source=(local);Initial Catalog=midatabase;User ID=Todos;password=")
      Protected 
adp As New SqlDataAdapter
      
Protected DS As New DataSet
      
Protected cmde As New SqlCommand
    
      
'------------------------------------------------------------
      Function LoadID() As ICollection
         adp = New SqlDataAdapter("select* from a_sal_prod", cnx)
         adp.Fill(DS, "LoadID")
         cnx.Close()
         LoadID = New DataView(DS.Tables("LoadID"))
         '
---------------------------
         
'---------------------------
         DS.Tables.Remove("LoadID")
        
      End Function
   
 
     
      Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

         DataGrid1.DataSource = LoadID()
         Me.DataGrid1.DataBind()
         
      End Sub
      
</script>
 
<body>
 
   <form>

      <h3>DataGrid Editing Example</h3>
      &nbsp;
      
      <asp:DataGrid id="DataGrid1" runat="server" Width="280px" Height="72px" AutoGenerateColumns="False">
                <Columns>
               <asp:BoundColumn HeaderText="Cantidad"></asp:BoundColumn>
               <asp:BoundColumn HeaderText="Existencia"></asp:BoundColumn>
               <asp:TemplateColumn HeaderText="Salida">
                  <ItemTemplate>
                     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                  </ItemTemplate>
               </asp:TemplateColumn>
                    <asp:TemplateColumn>
                        <ItemTemplate>
                            <asp:Button id=Button1 runat="server" Text="Button" CommandArgument='
<%# DataBinder.Eval(Container.DataItem,"Cantidad") + "$" + DataBinder.Eval(Container.DataItem,"Existencia") %>'>
                            
</asp:Button>
                        </
ItemTemplate>
                    </
asp:TemplateColumn>
               <
asp:BoundColumn HeaderText="Total"></asp:BoundColumn>
                </
Columns>
            </
asp:DataGrid>
      
    

   </
form>
 
</
body>
</
html

Eso es lo q tengo ahorita...y bueno, solo me da el error q te comente anteriormente....


Gracias!!
  #6 (permalink)  
Antiguo 08/01/2007, 15:33
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Re: De moda el DataGrid

Código:
      
     Function LoadID() As DataTable
         adp = New SqlDataAdapter("select* from a_sal_prod", cnx) 
         adp.Fill(DS, "LoadID") 
         cnx.Close() 

        return DS.Tables("LoadID") 
     End Function
Haber intenta eso... deberia de funcionar..
  #7 (permalink)  
Antiguo 08/01/2007, 15:35
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Re: De moda el DataGrid

Por cierto, claro que deven regresar las columnas Cantidad y Existencia dentro de tu "select* from a_sal_prod"

por que sino estan mejor pegate un tiro.. jajaj.. (es broma)

(que fuerte primo que fuerte)

Saludos
  #8 (permalink)  
Antiguo 08/01/2007, 15:52
Avatar de magosc  
Fecha de Ingreso: diciembre-2006
Mensajes: 72
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: De moda el DataGrid

Me supongo te refieres a q debe de tener ese nombre, porque dentro de esta tabla esta sal_can q seria la cantidad y sal_ex q seria existencia....

mmm. deveria de poner sal_can AS cantidad y sal_ex AS Existencia
??????

Cita:
Por cierto, claro que deven regresar las columnas Cantidad y Existencia dentro de tu "select* from a_sal_prod"

por que sino estan mejor pegate un tiro.. jajaj.. (es broma)

(que fuerte primo que fuerte)

Saludos
mmm.......creo q me tirare un tiro en la cien!!!...(no es broma)..jejeje
  #9 (permalink)  
Antiguo 08/01/2007, 16:06
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Re: De moda el DataGrid

Cita:
Iniciado por magosc Ver Mensaje
Me supongo te refieres a q debe de tener ese nombre, porque dentro de esta tabla esta sal_can q seria la cantidad y sal_ex q seria existencia....

jajaj mas claro ni el agua...
  #10 (permalink)  
Antiguo 08/01/2007, 16:35
Avatar de magosc  
Fecha de Ingreso: diciembre-2006
Mensajes: 72
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: De moda el DataGrid

Fijate q decidi hacer una nueva tabla.... q solo tuviera dos campos para probar...pero tampoco... hice esto..y no me funciono

Código HTML:
Function LoadID() As DataTable
         adp = New SqlDataAdapter("select can_p AS Cantidad , sal_p AS Existencai from p_prueba", cnx)
         adp.Fill(DS, "LoadID")
         cnx.Close()

         Return DS.Tables("LoadID")
      End Function
pero ahora me este error:...
Código PHP:
Input string was not in a correct format
DescriptionAn unhandled exception occurred during the execution of the current web requestPlease review the stack trace for more information about the error and where it originated in the code

Exception DetailsSystem.FormatExceptionInput string was not in a correct format
haaaaa ....

Gracias Stream!!!
  #11 (permalink)  
Antiguo 09/01/2007, 14:06
Avatar de magosc  
Fecha de Ingreso: diciembre-2006
Mensajes: 72
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: De moda el DataGrid

me tire un tiro!!!
  #12 (permalink)  
Antiguo 09/01/2007, 14:19
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Re: De moda el DataGrid

adp = New SqlDataAdapter("select can_p AS Cantidad , sal_p AS Existencia from p_prueba", cnx)
  #13 (permalink)  
Antiguo 09/01/2007, 15:24
Avatar de magosc  
Fecha de Ingreso: diciembre-2006
Mensajes: 72
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: De moda el DataGrid

Fijate stream...q justamente despues de haber pegado el post..me di cuenta del error de Existencia...pero me siguio igual....

Muchas gracias por tus aportes!!
  #14 (permalink)  
Antiguo 10/01/2007, 11:29
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Re: De moda el DataGrid

que visual studio estas usando ? 2003 o 2005 ?
  #15 (permalink)  
Antiguo 10/01/2007, 19:15
Avatar de magosc  
Fecha de Ingreso: diciembre-2006
Mensajes: 72
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: De moda el DataGrid

pos el 2005...
  #16 (permalink)  
Antiguo 11/01/2007, 10:49
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años
Puntos: 6
Re: De moda el DataGrid

Amigo, hoy no tengo mucho tiempo para postear, pero te dejo una diccion como usar el GridView de vs2005

http://msdn2.microsoft.com/es-es/lib...0t(VS.80).aspx

Saludos
  #17 (permalink)  
Antiguo 11/01/2007, 12:30
Avatar de magosc  
Fecha de Ingreso: diciembre-2006
Mensajes: 72
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: De moda el DataGrid

Ok..muchas gracias amigo Stream!!...creo q ya vi esa pagina...pero...la volveré a ver..talves deje algo en el aire....

Hay te aviso el fin de esta cuestion...

Muchas gracias de nuevo!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:17.