RECUPERAR TEXT DATALIST

 Tópico anterior Próximo tópico Novo tópico

RECUPERAR TEXT DATALIST

ASP.NET

 Compartilhe  Compartilhe  Compartilhe
#477206 - 17/10/2017 22:12:50

MAXCIM
GUARULHOS
Cadast. em:Dezembro/2003


olá amigos,

como recupero valor de um text  no evento DataList1_ItemCommand ?

testei o código a seguir , mas  txtQTD e ProdQTD vem sempre vazio

    Protected Sub DataList1_ItemCommand(ByVal source As Object,
        ByVal e As DataListCommandEventArgs) Handles DataList2.ItemCommand
        If e.CommandName = "AddToCart" Then
            Dim lbl As Label = DirectCast(e.Item.FindControl("ProdID"), Label)
            Dim TXT As TextBox = DirectCast(e.Item.FindControl("txtQTD"), TextBox)
            Dim TXTQTD As TextBox = DirectCast(e.Item.FindControl("ProdQTD"), TextBox)

            Dim ID As Integer = lbl.Text
            If TXTQTD Is Nothing Then

            Else
                Dim QTD = TXTQTD.Text
            End If
        End If
    End Sub



#477210 - 18/10/2017 09:21:47

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Como está o código ASPX do seu grid?

_______________________________________________________________________
Gostaria de ter seu sistema Desktop "traduzido" para uma interface web? Podemos conversar...
Virei Oráculo!
The end is nigh, be ready for the nukes!


#477212 - 18/10/2017 09:26:40

MAXCIM
GUARULHOS
Cadast. em:Dezembro/2003


<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="WF_DataList.aspx.vb" Inherits="ASPNET_TesteFerramentas.WF_DataList" MasterPageFile="~/Site.Master" %>

<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server">
    <!-- Styles -->
    <link href="Styles/novopedido.css" rel="Stylesheet" />
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
        <div>
            <asp:DataList id="DataList2" style="Z-INDEX: 101; POSITION: absolute; TOP: 176px"
                runat="server" Width="504px" RepeatColumns="3">
                <ItemTemplate>
                    <TABLE width="300" border="0">
                        <TR>
                            <TD vAlign="middle" align="right" width="100"><A href='productdetails.aspx?ProductID=<%#DataBinder.Eval(Container.DataItem, "ID")%>'><IMG height=75 src='pictures/<%#DataBinder.Eval(Container.DataItem, "Pth_img")%>' width=100>
                                </A>
                            </TD>
                            <TD vAlign="middle" width="200"><A href='ProductDetails.aspx?productID=<%# DataBinder.Eval(Container.DataItem, "ID") %>'><SPAN class="ProductListHead"><%# DataBinder.Eval(Container.DataItem, "Produto") %></SPAN><BR>
                                </A><SPAN class="ProductListItem"><B>Price: </B>
                                    <%# DataBinder.Eval(Container.DataItem, "vlr_venda", "{0:c}") %>
                                </SPAN>
                                <BR>
                                <STRONG><U><FONT color="#0000ff"><A href='addtocart.aspx?productID=<%# DataBinder.Eval(Container.DataItem, "ID") %>'>
                                                <SPAN class="ProductListItem"><FONT color="#9d0000"><B>ADD TO CART<B></FONT></SPAN>
                                            </A></FONT></U></STRONG></B></B>

                                <asp:TemplateField HeaderText="Qtd">
                                <ItemTemplate>
                                    <input type="text" class="quantAddItemCarrinho" onkeypress="validate(event)" title="Informe a quantidade. Pode conter até 3 casas decimais." id="txtQTD" />
                                </ItemTemplate>
                            </asp:TemplateField>

                                          <asp:TextBox runat="server" type="number" ID="ProdQTD" />
                                <asp:Label ID="ProdID" commandname="ProdID" runat="server" Text='<%#Eval("Id") %>' />
                                <asp:LinkButton ID="LinkButton1" runat="server" CommandName="AddToCart">Adicionar ao Carrinho</asp:LinkButton><br/><br/>

                            </TD>
                        </TR>
                    </TABLE>
                </ItemTemplate>
            </asp:DataList>
        </div>
</asp:Content>




#477213 - 18/10/2017 09:32:53

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
txtQTD você não vai conseguir mesmo, ele não é um controle que está no server. Mas "ProdQTD" deveria estar vindo certo.

A pergunta é: Porque ainda usar WebForms? Há tantas outras formas MUITO melhores que isso...

_______________________________________________________________________
Gostaria de ter seu sistema Desktop "traduzido" para uma interface web? Podemos conversar...
Virei Oráculo!
The end is nigh, be ready for the nukes!


#477214 - 18/10/2017 09:37:51

MAXCIM
GUARULHOS
Cadast. em:Dezembro/2003


Oi kerplunk,     ambos vem vazio quando clica.

estou usando Webforms porque tenho quase nenhuma experiencia com ASP.NET
estou iniciando isso agora,    e aplicando conhecimentos que trouxo do VB( descktop)

estou estudando, testando... aplicando.

quais seriam essas outras formas?





#477216 - 18/10/2017 10:14:08

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Você poderia tentar criar uma WebAPI e algum framework UI como Angular, React, Knockout ou similar.

_______________________________________________________________________
Gostaria de ter seu sistema Desktop "traduzido" para uma interface web? Podemos conversar...
Virei Oráculo!
The end is nigh, be ready for the nukes!


#477217 - 18/10/2017 10:19:06

MAXCIM
GUARULHOS
Cadast. em:Dezembro/2003


ainda não estou nesse nível!

acho tudo isso muito bacana, mas ainda demanda muito estudo. vou me aprofundar mais nisso;

mas enquanto não  assimilo essas tecnologias,teria alguma dica só para fechar esse projeto em WebForms?



#477218 - 18/10/2017 10:31:25

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Bem, você está fazendo uma mistura de componentes server e client que está difícil até de entender do que se trata. O ASP:DataList não é o controle mais apropriado para o que você quer fazer, mas sim o DataGridView. Então: DataGridView e use os controles no server(runat="server").
Outra coisa, realmente demanda estudar para utilizar frameworks de UI, mas tudo parte de um mesmo princípio: Entender. O que acontece é que você ainda não diferenciou bem a separação entre UI e codebehind. Você está usando o mesmo raciocínio que usa para Windows forms, procedural e voltado à eventos. Então na verdade, você precisa primeiro "desaprender" isso para poder entender bem os princípios de programação em camadas(sim, a relação ASPX e codebehind é o esse princípio).

_______________________________________________________________________
Gostaria de ter seu sistema Desktop "traduzido" para uma interface web? Podemos conversar...
Virei Oráculo!
The end is nigh, be ready for the nukes!


 Tópico anterior Próximo tópico Novo tópico


Para responder este tópico o login é requerido
Se você já possui uma conta de usuário por favor faça seu login
Se você não possui uma conta de usuário use a opção Criar usuário