MariaA Posted May 3, 2015 at 08:30 AM Report Share #582350 Posted May 3, 2015 at 08:30 AM (edited) Bom dia. Tenho em C# um form que faz uma pesquisa após inserir texto num textBox e clicar no botão 'Pesquisar'. O método que faz essa pesquisa tem a assinatura: private void btProcurar_Click(object sender, EventArgs e) { Agora quero que essa pesquisa possa ser feita se preencher o textBox e pressionar a tecla Enter. Eis o código: private void tbPesquisa_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == (char)Keys.Enter) { MessageBox.Show("Cliquei ENTER."); this.btProcurar_Click(); } } A minha dúvida é que valores passar aos parametros 'sender' e 'e' do método que estou a invocar. Se alguém me conseguisse explicar/ajudar a perceber como funcionam estes parametros. Obrigada. Edited May 3, 2015 at 10:03 AM by apocsantos geshi Link to comment Share on other sites More sharing options...
NelsonSilva Posted May 3, 2015 at 09:24 AM Report Share #582351 Posted May 3, 2015 at 09:24 AM Bom dia. Tenho em C# um form que faz uma pesquisa após inserir texto num textBox e clicar no botão 'Pesquisar'. O método que faz essa pesquisa tem a assinatura: private void btProcurar_Click(object sender, EventArgs e) { Agora quero que essa pesquisa possa ser feita se preencher o textBox e pressionar a tecla Enter. Eis o código: private void tbPesquisa_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == (char)Keys.Enter) { MessageBox.Show("Cliquei ENTER."); this.btProcurar_Click(); } } A minha dúvida é que valores passar aos parametros 'sender' e 'e' do método que estou a invocar. Se alguém me conseguisse explicar/ajudar a perceber como funcionam estes parametros. Obrigada. Bom dia, O parametro sender tem a referência para o objecto que o chamou. No caso do teu botão btProcurar_Click, o sender tem a referência do próprio botão. O sender pode ser útil para validar que tipo de objecto é, e assim aceder às suas propriedades. Por exemplo: Button btn = sender as Button; O parâmetro "e" é uma instância do eventargs e contém informação sobre o evento que é disparado. Nenhum destes parâmetros é útil para o que desejas, nem é boa política alterar o seu comportamento. No teu caso em concreto não vejo necessidade de passares nenhum parâmetro, penso que basta chamares o evento click como estas a fazer:https://msdn.microsoft.com/en-us/library/hkkb40tf%28v=vs.90%29.aspx Nelson Silva / Fundador Doa-se nsilva@doa-se.com / 932080068 Doa-se : http://Doa-se.com Link to comment Share on other sites More sharing options...
munkbozz Posted May 5, 2015 at 02:33 PM Report Share #582503 Posted May 5, 2015 at 02:33 PM Não é comum realizar o trigger da ação click de um button, ficará mais organizado e de melhor manutenção posteriormente se criares um método na tua classe e inserir no corpo dos contextos em que pretenderes chamar: private void btProcurar_Click(object sender, EventArgs e) { metodoButton1Click(); } // ... private void tbPesquisa_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == (char)Keys.Enter) { MessageBox.Show("Cliquei ENTER."); metodoButton1Click(); } } protected DialogResult metodoButton1Click() { return MessageBox.Show("btProcurar_Click"); } Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now