Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rvlira

Configurar parâmetro de DataSource dinamicamente

Recommended Posts

Pessoal,

 

Estou com um problema que acredito ser básico, mas como estou iniciando no ASP.Net estou tendo problemas.

 

Tenho uma página chamada "Primeira.aspx" com um ListBox. O botão submit dessa página está com a propriedade "PostBackUrl" para "Segunda.aspx".

 

Na segunda página eu tenho um DataSource com a seguinte SQL:

 

SELECT ID_NOTA, DESCRICAO_PRODUTO FROM NOTAS_DETALHE WHERE ID_PRODUTO=@ID_PRODUTO

O que eu estou tentando é preencher nesse parâmetro o valor selecionado na ListBox da página anterior. Tentei de diversas formas diferentes. Tentei colocar o parâmetro para pegar o valor de um controle (apontando para PreviousPage e propriedade FindControl, etc.), Single Value Databind, mas nada funcionou até agora. O mais perto que consegui chegar pareceu ser nessa última tentativa quando fiz o seguinte:

 

Criei a seguinte propriedade na segunda página:

 

    public string ProdutoSelecionado
    {
        get
        {
            ListBox Lista = (ListBox)PreviousPage.FindControl("ListaProdutos");
            return Lista.SelectedValue;
        }
    }

Mas agora não consigo configurar o parâmetro para pegar o valor da propriedade. Estou fazendo assim:

 

<asp:ControlParameter ControlID="Page" DefaultValue="0" Name="ID_PRODUTO"
  PropertyName="ProdutoSelecionado" Type="Int32" />

Acredito que se eu tentasse passar o valor pela Query String conseguiria, mas meu objetivo é justamente evitar a query string.

 

Agradeço se alguém puder me ajudar.

 

t+!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ja q com essa propriedade você recupera o valor da pagina anterior, seta o valor no load da pagina 2 para seu datasource:

 

No page load você faz assim:

SeuObjectDataSource.SelectParameters.Add("ID_PRODUTO", TypeCode.Int32, ProdutoSelecionado);

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.