Selecione programaticamente o item no Asp.Net ListView
Depois de fazer uma pesquisa rápida, não consigo encontrar a resposta para essa coisa aparentemente simples de se faze
Como selecionar manualmente um item em um Asp.Net ListVie
Eu tenho um SelectedItemTemplate, mas não quero usar um asp: button ou asp: LinkButton para selecionar um item. Quero que seja feito a partir de um URL. Como um QueryString, por exemplo.
Da maneira que imagino seria no ItemDataBound, verifique uma condição e defina-a como selecionada se for verdadeira, mas como faço isso?
Por exemplo
protected void lv_ItemDataBound(object sender, ListViewItemEventArgs e) {
using (ListViewDataItem dataItem = (ListViewDataItem)e.Item) {
if (dataItem != null) {
if( /* item select condition */ ) {
// What do I do here to Set this Item to be Selected?
// edit: Here's the solution I'm using :
((ListView)sender).SelectedIndex = dataItem.DisplayIndex;
// Note, I get here and it gets set
// but the SelectedItemTemplate isn't applied!!!
}
}
}
}
Tenho certeza de que é uma ou duas linhas de códig
EDITAR Atualizei o código para refletir a solução e parece que posso selecionar o SelectedItemIndex do ListView, no entanto, na verdade, ele não está processando o SelectedItemTemplate. Não sei se devo fazer isso no evento ItemDataBound como sugerido abaixo.