Jump to content

Recommended Posts

Posted

Boas pessoal!

Estou aqui a desenvolver um programa e deparei-me agora com um pequeno problema. Tenho uma TextBox que possui AutoComplete (sugestões). O que pretendo, é executar um método, quando utilizador seleciona uma opção do AutoComplete. Sinceramente, não encontro qualquer evento que me permita fazer isso. 😐

public void CarregaUtentes()
{
using (sarEntities sare = new sarEntities())
{
	foreach (mdl_sar_contas_correntes contas in sare.mdl_sar_contas_correntes)
	{
		acsc.Add(contas.PESSOA_ID);
	}

	txtEmail.AutoCompleteMode = AutoCompleteMode.Suggest;
	txtEmail.AutoCompleteSource = AutoCompleteSource.CustomSource;
	txtEmail.AutoCompleteCustomSource = acsc;
}
}

Alguém me pode ajudar sff?

Cumprimentos,

Posted

Dependendo dos casos, pode ser-te útil um ou outro evento. Dou-te duas opções:

capturar o evento Validating da TextBox, ou então o Keyup (e ai capturas a tecla(s) que quiseres)

Faz uns testes e ve qual o que mais se adapta para ti.

Oracle Certified Professional - AdministraçãoOracle Certified Professional - Pl/sqlMCPD - Microsoft Certified Professional DeveloperMCTS - Microsoft Certified Technology Specialist

Posted

Esse tipo de abordagem não pode ser implementado. Tem de ser algo, em que após seleção da sugestão, execute um método, ou seja, tenho de usar um evento que seja despoletado após seleção.

Não encontro nada.

:|

Posted

E as sugestões que te dei não servem porque? Despoleta o evento quando seleccionas uma opção....

Oracle Certified Professional - AdministraçãoOracle Certified Professional - Pl/sqlMCPD - Microsoft Certified Professional DeveloperMCTS - Microsoft Certified Technology Specialist

Posted (edited)

E as sugestões que te dei não servem porque? Despoleta o evento quando seleccionas uma opção....

Pois, o problema é esse mesmo. Qual o evento? O AutoComplete não tem nenhum evento relacionado com a seleção. O que eu fiz, foi um AutoComplete com SuggestAppend e um evento PreviewKeyDown na TextBox. Ou seja, quando o utilizador fizer uma pesquisa, basta fazer Tab, ele seleciona o mais parecido com o que escreveu na TextBox e faz o que quero através do PreviewKeyDown.

private void txtEmail_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
{
if (e.KeyCode == Keys.Tab)
{
	//Faz coisas
}
}
Edited by RJ90

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.