asp.net + datagrid

pumlala

Membro
boa tarde pessoal
eu ando aqui com um bixinho a moer me o cerbero sobre as datagrids
necessitava de postar uma datagrid atraves do desgin view no web devoleper ate aqui tudo bem mas o que queria mesmo era adiciionar um butao ao final de cada linha para poder selecionar os dados e envia los para uma nova tabela na base de dados abrços
 
quanto a adicionares um botão, podes fazer de 3 maneiras adicionalo atraves de buttonfield,imagebutton e itentemplate, semdo este ultimo o mais dificil de manusear, depois tens de utilizar o evento row command da grid e trabalhar com o e.comand name do botão, para chamares o registo que queres.

pesquiza no google por estes termos ou conceitos e tenta fazer qq.

se não csgs poe aqui o code que nos ajudamos

se estiveres na versão 2005 , utiliza a gridview
 
Última edição pelo moderador:
melhor ja consegui resolver assim

Código:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="tipo.aspx.vb" Inherits="_Default" %>
<%@Import Namespace="System.Data.OleDb" %>
<%@ Import Namespace="System.Web.Mail" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script  runat="server">
    Public Sub gridview1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs)
        Dim rowint As Integer = Convert.ToInt32(e.CommandArgument)

        Dim strvar As String = Convert.ToString(GridView1.Rows(rowint).Cells(1).Text)
        Dim encomenda() As String
        Dim i As Integer
        i = 0
        encomenda(i) = strvar
        
    End Sub
</script>
<html>
<head>

<body>
<STYLE type=text/css>BODY {
    BACKGROUND-IMAGE: url(estante.jpg)
    }</STYLE>
<form id="form1" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Ok" />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" OnRowCommand="gridview1_RowCommand"
    DataSourceID="AccessDataSource1" 
    EmptyDataText="Digite o tipo de artigo">
    <Columns>
        <asp:BoundField DataField="TipoArtigo" HeaderText="TipoArtigo" 
            SortExpression="TipoArtigo" />
        <asp:BoundField DataField="Descricao" HeaderText="Descricao" 
            SortExpression="Descricao" />
        <asp:BoundField DataField="Autor" HeaderText="Autor" SortExpression="Autor" />
        <asp:BoundField DataField="Editora" HeaderText="Editora" 
            SortExpression="Editora" />
        <asp:BoundField DataField="QuantDisponivel" HeaderText="QuantDisponivel" 
            SortExpression="QuantDisponivel" />
        <asp:BoundField DataField="PrecoVenda" HeaderText="PrecoVenda" 
            SortExpression="PrecoVenda" />
        <asp:ButtonField ButtonType="Button" CommandName="Select" 
                HeaderText="Encomendar" ShowHeader="True" Text="Encomendar"  />
    </Columns>
</asp:GridView>
<asp:AccessDataSource ID="AccessDataSource1" runat="server" 
    DataFile="App_Data\livraria.mdb" 
    
    SelectCommand="SELECT TipoArtigo, Descricao, Autor, Editora, QuantDisponivel, PrecoVenda FROM Artigo WHERE (TipoArtigo = ?) AND (QuantDisponivel &gt; 0)">
    <SelectParameters>
        <asp:ControlParameter ControlID="TextBox1" Name="?" PropertyName="Text" />
    </SelectParameters>
</asp:AccessDataSource>
</form>
</body>
</html>

so que agr alfinete o meu problema e guardar num vector cada vez que carrego no butao encomendar
nao consigo manter o valor do i sempre que a funcao e chamada muito menos o valor do vector
agr e e que me coço
 
Última edição pelo moderador:
o valor dei tens de guardar numa var de sessão

do tipo session["teste"]=i;

depois cada vez que a queres chamar fazes string teste= session["teste"].tostring();

variaveis de sessão servem para a partir da altura em que são declaradas, podem ser chamadas em qualquer form , so se perdem quando a sessão que 20 por default (perto de 20 mts ) expirar.
 
cada coisa que excutas ao servidor , do tipo o eevento click do botão, faz um postback a pagina , executando tdo o code que le esta associado, em terminando tdos os valores que tinhas em vars ficam a null ou vazios, sendo assim temd e ser por uma var de sessão

penso que é isso que queres.

pesso desculpa por usar c# mas é so converteres
 
Back
Topo