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!!