Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal! Bom dia a todos! Sou calouro em ASP.NET e tô usando C#.
Tenho um form popup onde há um DropDownList; nele, seleciono um setor; após a seleção o evento SelectedIndexChanged é invocado onde é passado como parâmetro o código do setor; ao receber este código, uma rotina é executada para popular um datagrid com o nome dos funcionários locados naquele setor. Abaixo, um exemplo de como ficaria o datagrid quando seleciono, por exemplo, o setor Informática:
Nome
-----------------
Mané Oliveira
Menina Gatinha
Zé Pitombeira
Zé da Silva
No evento ItemCreated, programei para que quando o usuário passar o mouse sobre as linhas ele mude a cor e o ícone para uma "mão" indicando que é um link, conforme códifo abaixo:
if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
e.Item.Attributes.Add("onMouseOver", "this.style.backgroundColor='#ffcc99'; this.style.cursor='pointer';");
e.Item.Attributes.Add("onMouseOut", "this.style.backgroundColor='White';");
}
Até aí, funciona sem problemas. Mas, eu quero clicar em Menina Gatinha, por exemplo, e setar um Label como o nome selecionado:
lblUsuario.Text = e.Item.Cells[0].Text
Fiz isso no evento ItemCreated, mas é colocado o valor ''(branco) no Label; tentei colocar o mesmo comando no evento ItemDataBound e funcionou. NO ENTANTO, ele pegou o valor errado:
-> se eu clicar em **Menina Gatinha** ele pega **Mané Oliveira**;
-> se eu clicar em **Zé Pitombeira** ele pega **Menina Gatinha**;
-> se eu clicar em **Zé da Silva** ele pega **Zé Pitombeira**;
-> e, por fim, se eu clicar em Mané Oliveira ele pega Zé da Silva.
Perceberam que ele sempre tá pegando a linha anterior? No caso de quando clico na primeira linha ele pega a última. Alguém sabe o que danado é isso???
Desde já, agradeço.
Carregando comentários...