sábado, 10 de agosto de 2013

Desabilitando itens no dropdownlist

Fala galera,

Após muito tempo de inatividade no blog, segue mais um compartilhamento de código.
Durante essa semana me deparei com a necessidade de categorizar os itens dentro de um dropdownlist.

Algo mais ou menos assim:

Categoria 1
--- item 1.1
--- item 1.2
--- item 1.3
Categoria 2
--- item 2.1
--- item 2.2
--- item 2.3

Acontece que os itens "categoria 1" e "categoria 2" são apenas informativos e não podem ser selecionáveis.
Para isso, é preciso desabilitar a opção de seleção desses itens.

Definir o atributo "enabled" no server-side como false não soluciona o problema. É preciso trabalhar com os atributos no lado do cliente.

Segue então o código para desabilitar o item no dropdown:

System.Web.UI.WebControls.ListItem item = ddl.Items.FindByValue("[valor]");
if (item != null)
{
   item.Attributes.Add("style""color:gray;");
   item.Attributes.Add("disabled""true");
}

Onde [valor] corresponde ao valor que identifica o item(propriedade value) que deve ser desabilitado.



Um abraço e até a próxima!!