asp.net - DropDownList Value not empty -


i'm having weird problem, i've copied , pasted code, 1 works fine @ 1 view , doesn't works @ one.

my problem dropdownlist ("destino" or "origem") when got no value property val ("") have text property val ("selecione um tipo"), after first "selectindexchange" event trigger, dropdownlist got val ("selecione um tipo") text , value property.

thats code:

    protected void ddltipouadestinosrc_selectedindexchanged(object sender, eventargs e)     {         list<unidadearmazenamento> uas = new unidadearmazenamentobo().getallunidadesarmazenamentobyunidade(loggeduser.unidadeactiva.idunidade, false);         if (!string.isnullorempty(ddltipouadestinosrc.selectedvalue))         {             if (ddltipouadestinosrc.selectedvalue.equals("silo"))                 uas = constroimodeloebusca(tipounidadearmazenamento.silo);              else if (ddltipouadestinosrc.selectedvalue.equals("moega"))                 uas = constroimodeloebusca(tipounidadearmazenamento.moega);               ddlsilodestinosrc.datasource = uas;             ddlsilodestinosrc.databind();         }         else         {             this.loadsilodestino(uas);         }     } 

auxiliar methods:

    private void loadsilodestino(list<unidadearmazenamento> unidadesarmazenamento)     {             ddlsilodestinosrc.datatextfield = typeextensions.nomedapropriedade<unidadearmazenamento>(p => p.nome);             ddlsilodestinosrc.datavaluefield = typeextensions.nomedapropriedade<unidadearmazenamento>(p => p.idunidadearmazenamento);              ddlsilodestinosrc.datasource = unidadesarmazenamento;              ddlsilodestinosrc.databind();              ddlsilodestinosrc.items.insert(0, new listitem("selecione o destino", string.empty));     }        private listitem[] tiposunidadearmazenamento()     {          return uihelp.builddropdownlistenum<tipounidadearmazenamento>("selecione um tipo");     }      private list<unidadearmazenamento> constroimodeloebusca(tipounidadearmazenamento tipoua)     {         return new unidadearmazenamentobo().getunidadesarmazenamentobymodel(new unidadearmazenamento { tipounidade = tipoua, unidade = this.loggeduser.unidadeactiva }, false);     } 

and last method call @ initialize page

        private void loaddropdownlist()         {             unidadearmazenamentobo silobo = new unidadearmazenamentobo();              if (ddltipograo.items.count == 0)                 ddltipograo.items.addrange(uihelp.builddropdownlistenum<grao>("selecione o grão"));              if (ddlsafra.items.count == 0)                 ddlsafra.items.insert(0, new listitem("selecione safra", string.empty));              ddlsafra.databind();              if (ddltipoorigem.items.count == 0)                 ddltipoorigem.items.addrange(uihelp.builddropdownlistenum<tipoorigemensilagem>("selecione o tipo de origem"));              if (ddltipodestino.items.count == 0)                 ddltipodestino.items.addrange(this.tiposunidadearmazenamento());              if (ddlsituacaoproduto.items.count == 0)                 ddlsituacaoproduto.items.addrange(uihelp.builddropdownlistenum<estadodograo>("selecione situação"));              list<equipamento> secadores = new equipamentosbo().getequipamentosbyunidade(this.loggeduser.unidadeactiva.idunidade).findall(s => s.tipo == tipoequipamento.secador && !s.manutencao);              ddlsecador.datasource = secadores;             ddlsecadorsrc.datasource = secadores;             ddlsecadorsrc.databind();             ddlsecador.databind();             ddlsecador.items.insert(0, new listitem("selecione o secador", ""));             ddlsecadorsrc.items.insert(0, new listitem("selecione o secador", ""));              ddlsiloorigemsrc.datatextfield = typeextensions.nomedapropriedade<unidadearmazenamento>(p => p.nome);             ddlsiloorigemsrc.datavaluefield = typeextensions.nomedapropriedade<unidadearmazenamento>(p => p.idunidadearmazenamento);              ddlsilodestinosrc.datatextfield = typeextensions.nomedapropriedade<unidadearmazenamento>(p => p.nome);             ddlsilodestinosrc.datavaluefield = typeextensions.nomedapropriedade<unidadearmazenamento>(p => p.idunidadearmazenamento);              list<unidadearmazenamento> unidadesarmazenamento = silobo.getallunidadesarmazenamentobyunidade(this.loggeduser.unidadeactiva.idunidade, false);              ddltipouadestinosrc.datasource = this.tiposunidadearmazenamento();             ddltipouadestinosrc.databind();              ddltipouaorigemsrc.datasource = this.tiposunidadearmazenamento();             ddltipouaorigemsrc.databind();              ddlsiloorigemsrc.datasource = unidadesarmazenamento;             ddlsiloorigemsrc.databind();//utilizado para consultas             ddlsiloorigemsrc.items.insert(0, new listitem("selecione origem", string.empty));              ddlsilodestinosrc.datasource = unidadesarmazenamento.findall(s => s.tipounidade == tipounidadearmazenamento.silo);             ddlsilodestinosrc.databind();//utilizado para consultas             ddlsilodestinosrc.items.insert(0, new listitem("selecione um silo", string.empty));              ddlsituacaoproduto.databind();             ddltipograo.databind();             ddltipoorigem.databind();              if (!this.recordstatus.equals(string.empty))             {                 ddlorigem.datatextfield = typeextensions.nomedapropriedade<unidadearmazenamento>(p => p.nome);                 ddlorigem.datavaluefield = typeextensions.nomedapropriedade<unidadearmazenamento>(p => p.idunidadearmazenamento);                 ddlorigem.datasource = silobo.getallunidadesarmazenamentobyunidade(this.loggeduser.unidadeactiva.idunidade, false);                 ddlorigem.databind();             }         } 

any usefull, because, i'm totally lost!

check if dropdown rebinded , selected value overwritten when post done.bind dropdown in pageload condition

if(!ispostback) 

Comments

Popular posts from this blog

python - How to create a legend for 3D bar in matplotlib? -

java - Multi-Label Document Classification -

php - Dynamic url re-writing using htaccess -