Ver Mensaje Individual
  #3 (permalink)  
Antiguo 12/01/2007, 09:54
Stream
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 20 años, 8 meses
Puntos: 6
Re: ¡este Datagrid!!!!!!

Men.. ahi te va una ayuda...

Codigo aspx para vs 2005
Código:
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
            <Columns>
                <asp:TemplateField HeaderText="Cantidad">
                    <ItemTemplate>
                        <asp:Label ID="lblCantidad" runat="server" Text='<%# Bind("Cantidad") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="Existencia">
                    <ItemTemplate>
                        <asp:Label ID="lblExistencia" runat="server" Text='<%# Bind("Existencia") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField>
                    <ItemTemplate>
                        <asp:Button ID="BtnCalcular" runat="server" CommandArgument='<%# Bind("Cantidad") & "$" & Bind("Existencia") %>'
                             Text="Calcular" Width="131px" CommandName="Select" />
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField>
                    <ItemTemplate>
                        <asp:TextBox ID="txtResultado" runat="server"></asp:TextBox>
                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>
        </asp:GridView>
Código:
 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not IsPostBack Then
            LoadData()
        End If
    End Sub

    Private Sub LoadData()
        '//suponiendo que en esta parte de codigo te traes los datos 
        '//de la base de datos
        Dim ds As DataSet = New Data.DataSet
        ds.Tables.Add("LoadID")
        With ds.Tables("LoadID")
            .Columns.Add(New DataColumn("Cantidad", GetType(System.Decimal)))
            .Columns.Add(New DataColumn("Existencia", GetType(System.Decimal)))
        End With

        Dim dr As DataRow
        dr = ds.Tables("LoadID").NewRow
        dr.Item("Cantidad") = 5
        dr.Item("Existencia") = 55
        ds.Tables("LoadID").Rows.Add(dr)

        dr = ds.Tables("LoadID").NewRow
        dr.Item("Cantidad") = 3
        dr.Item("Existencia") = 25
        ds.Tables("LoadID").Rows.Add(dr)

        '//ahora biendeamos al datagrid 
        GridView1.DataSource = ds
        GridView1.DataMember = "LoadID"
        GridView1.DataBind()
    End Sub

    Protected Sub GridView1_SelectedIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewSelectEventArgs) Handles GridView1.SelectedIndexChanging
        Dim dr As GridViewRow = Me.GridView1.Rows(e.NewSelectedIndex)
        If Not dr Is Nothing Then 'AndAlso dr.RowState = DataControlRowState.Selected Then
            Dim lblCantidad As Label
            Dim txtResultado As TextBox
            Dim lblExistencia As Label

            lblCantidad = dr.Cells(0).FindControl("lblCantidad")
            lblExistencia = dr.Cells(1).FindControl("lblExistencia")
            txtResultado = dr.Cells(3).FindControl("txtResultado")

            txtResultado.Text = CDec(lblCantidad.Text) * CDec(lblExistencia.Text)

        End If
    End Sub
En este ejemplo, yo creo la tabla en tiempo de ejecucion y se la asigno al datagrid, en tu caso, debes traerte los datos de la base de datos, asegurandore que en tu select esten los campos 'Cantidad' y 'Existencia' y la tabla se llame 'LoadID'

Espero te sirva, saludos