Jump to content
mib

filtar gridview tendo em conta o valor selecionado na dropdownlist

Recommended Posts

mib

Ola.

Precisava da vossa ajuda se fosse possível.

Ja configurei uma dropdownlist e agora tenho a dropdownlist com nomes de vários professores.

Agora, quando selecciono um dos professores queria que me mostrasse numa datagriedview as disciplinas que o professor dá aulas.

Alguém sabe como é que posso fazer isto?

Obrigad

Share this post


Link to post
Share on other sites
nelsonr

Boas,

indo por partes, primeiro tens de reagir ao selecionar de uma opção na dropdownlist.

Já tens isso feito? Se não, podes fazer duplo click na dropdownlist para criar o evento "onselectedindexchanged". Depois podes colocar a propriedade de AutoPostBack a true, para que faça o postback quando selecionar um item.

Depois no evento vais ter de ler as disciplinas (de base de dados?), filtrando pelo professor escolhido (dropdownlist.selecteditem.value) e adicionar à grelha.

Share this post


Link to post
Share on other sites
mib

sim estou a usar a base de dados oracle.

até agora ainda só consegui "popular" a dropdownlist com os professores que vêm da minha base de dados.

já meti o autopostback a true como disseste.

agora para mostrar na gridview não estou mesmo a ver como se faz e não encontro nada na net que me ajude.

agradeço desde já a tua resposta!

Share this post


Link to post
Share on other sites
nelsonr

Existem várias formas.

Por exemplo, podes ler os dados com um DataAdapter e usar preencher uma DataTable, que atribuis à dataSource da gridview.

Estás a usar que linguagem? Exemplo em C#:

OleDbConnection con = new OleDbConnection("......."); // Coloca aqui a tua connection string
OleDbDataAdapter dataAdapter = new OleDbDataAdapter(String.Format("select * from disciplinas where idprofessor={0} ", IDProfessor), con);
DataTable table = new DataTable();
dataAdapter.Fill(table);
GridView1.DataSource = table;
GridView1.DataBind();

É apenas um exemplo, tens de ter em atenção para que o IDProfessor seja inteiro, e não deixar colocar texto para reduzir o risco de SQLInjection.

Share this post


Link to post
Share on other sites
mib

agradeço imenso a tua resposta. :)

já agora estou com outro problema, eu nos computadores da universidade já tinha a dropdownlist com o nome dos professores.

agora estou a tentar fazer o mesmo em casa e quando crio uma datasource através da dropdownlist no visual studio não me aparecem as tabelas que pretendo, só aparecem umas tabelas de "JObs, Countries,etc,etc" que nunca criei.

e já fiz o download do oracle e criei as tabelas todas na minha conexão aqui de casa.

alguém sabe porque será?

e esqueci-me de dizer...sim estou a usar c#!

Share this post


Link to post
Share on other sites
mib

já consegui resolver em vez de escolher a opção "specify columns from a table or view", escolhi a opcao para especificar o comando sql e escrevi o comando que pretendia.

Vou agora experimentar o código que me disseste!

Share this post


Link to post
Share on other sites
mib

isto não está faci!!

agora quando executo a página onde tenho o dropdown dá.me um erro de servidor na aplicação.

ORA-12154: TNS:could not resolve the connect identifier specified

Detalhes da Exceção: System.Data.OracleClient.OracleException: ORA-12154: TNS:could not resolve the connect identifier specified

Share this post


Link to post
Share on other sites
nelsonr

Isso parece problema da connection string com a base de dados Oracle.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.