Ir para o conteúdo
Leudassdf

Problema em listbox

Mensagens Recomendadas

Leudassdf

Boas pessoal

Eu tenho uma listbox e gostaria que ao mudar o "texto" selecionado ele mostra-se a "traduçao" do mesmo numa label.

Eu fiz isto:

Protected Sub DropDownList1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DropDownList1.SelectedIndexChanged
	For i = 0 To 8
		If LCase(ListBox1.Items(i).Value.ToString) <> LCase(DropDownList1.SelectedItem.Value.ToString) Then
			ListBox1.Items(i).Enabled = False
		Else
			ListBox1.Items(i).Enabled = True
		End If
	Next
	lbl_significado.Text = ""
End Sub	Protected Sub ListBox1_Load(sender As Object, e As EventArgs) Handles ListBox1.Load
	For i = 0 To 8
		If LCase(ListBox1.Items(i).Value.ToString) <> LCase(DropDownList1.SelectedItem.Value.ToString) Then
			ListBox1.Items(i).Enabled = True
		Else
			ListBox1.Items(i).Enabled = True
		End If
	Next
	lbl_significado.Text = ""
End Sub	Protected Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
	Select Case LCase(ListBox1.SelectedItem.Text)
		Case "hello"
			lbl_significado.Text = "Olá"
		Case "i love you"
			lbl_significado.Text = "Amo@te"
		Case "i desire you"
			lbl_significado.Text = "Desejo-te"
		Case "ich wünsche ihnen"
			lbl_significado.Text = "Desejo-te"
		Case "te amo"
			lbl_significado.Text = "Amo@te"
		Case "estoy sorprendido"
			lbl_significado.Text = "Estou Estupfato"
		Case "jsem ohromen"
			lbl_significado.Text = "Estou Estupfato"
		Case "miluji tě"
			lbl_significado.Text = "Amo@te"
		Case "Ich will dich"
			lbl_significado.Text = "Desejo-te"
	End Select

O problema é que no codigo se tiver o autopostback ativo nunca consigo selecionar nada pois ele esta sempre a selecionar o primeiro item.

Se o autopostback estiver desligado o selectindexchange nao dispara.

Alguem sabe como posso resolver este problema?

Editado por Caça
GeSHi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Patanyska

Olá Leudassdf

Li que a tua ListBox tem sempre o primeiro item seleccionado... ou seja, presumo que tenhas alguma linha pelo teu código tal como: ListBox1.SelectedIndex = 0 ou ListBox1.SelectedValue = "hello"

Caso tenhas, sugiro que a tires, isto porque ao indicares por defeito um item seleccionado, isto vai disparar o evento ListBox1_SelectedIndexChanged e nunca mais consegues sair do resultado do primeiro item.

Fico a espera que me digas algo :)

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Leudassdf

Olá Leudassdf

Li que a tua ListBox tem sempre o primeiro item seleccionado... ou seja, presumo que tenhas alguma linha pelo teu código tal como: ListBox1.SelectedIndex = 0 ou ListBox1.SelectedValue = "hello"

Caso tenhas, sugiro que a tires, isto porque ao indicares por defeito um item seleccionado, isto vai disparar o evento ListBox1_SelectedIndexChanged e nunca mais consegues sair do resultado do primeiro item.

Fico a espera que me digas algo :)

Boas,

O problema nem era esse. Pelo menos o meu nao era.

O que aconteceu foi o seguinte: Alguns values dos items eram iguais. Ao mudar os values de forma a que ficassem todos diferentes a listbox ficoua funcionar na perfeiçao. Depois fiz mais alguns testes e verifiquei que realmente os values dos items nao podem ser iguais.

No entanto agradeço a tua resposta.

Cumprimentos

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.