protected void cbxDemanda_SelectedIndexChanged(object sender, EventArgs e) { chkListaCamposVisiveis.Items.Clear(); PreencherCheckBoxPadrao(); int idEtapa; if (int.TryParse(cbxDemanda.SelectedValue, out idEtapa) && idEtapa > 0) { var campos = new ManterCampo().ObterPorEtapa(idEtapa); foreach (var campo in campos) { chkListaCamposVisiveis.Items.Add( new ListItem { Text = campo.Nome, Value = campo.Nome } ); } } }
protected void rptFormulario_OnItemDataBound(object sender, RepeaterItemEventArgs e) { if ((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem)) { var lblNome = (Label)e.Item.FindControl("lblNomeCampo"); var lblResposta = (Label)e.Item.FindControl("lblResposta"); var divAbrirCampo = (HtmlGenericControl)e.Item.FindControl("divAbrirCampo"); var lblQuebrarLinha = (Label)e.Item.FindControl("lblQuebrarLinha"); var campo = (CampoResposta)e.Item.DataItem; var checkListAlternativas = (CheckBoxList)e.Item.FindControl("chkListaAlternativas"); var largura = int.Parse(ViewState["larguraCampo"].ToString()); largura += campo.Campo.Largura; if (largura > 12) { lblQuebrarLinha.Visible = true; lblQuebrarLinha.Text = "</div><div class=\"row\">"; largura = campo.Campo.Largura; } divAbrirCampo.Attributes.Add("class", "col-md-" + campo.Campo.Largura + " col-xs-12"); ViewState["larguraCampo"] = largura; lblNome.Text = campo.Campo.Nome; ManterCampo mCampo = new ManterCampo(); // Se tiver alternativas mostra todas e marca quais foram escolhidas if (campo.Campo.ListaAlternativas.Count() > 0) { var alternativasRespondidas = new BMAlternativaResposta().ObterPorCampoRespostaId(campo.ID); var count = 0; foreach (var alternativa in campo.Campo.ListaAlternativas) { checkListAlternativas.Items.Add(new System.Web.UI.WebControls.ListItem(alternativa.Nome, "0", false)); if (alternativasRespondidas.Count(d => d.Alternativa == alternativa) > 0) { checkListAlternativas.Items[count].Selected = true; } count++; } } else { // Caso seja um capo do tipo somatório recupera o total da soma if (campo.Campo.TipoCampo == (int)enumTipoCampo.Somatório && campo.Campo.ListaCamposVinculados.Count() > 0) { var culture = CultureInfo.CreateSpecificCulture("pt-BR"); lblResposta.Text = mCampo.ObterTotalSomatorio(campo.Campo, campo.EtapaResposta.ProcessoResposta.ID).ToString(culture); } else if (campo.Campo.TipoCampo == (int)enumTipoCampo.Questionário) { int idResposta; QuestionarioParticipacao resposta; if (int.TryParse(campo.Resposta, out idResposta)) { resposta = new ManterQuestionarioParticipacao().ObterQuestionarioParticipacaoPorId(idResposta); var rptRespostasQuestionario = (Repeater)e.Item.FindControl("rptRespostasQuestionario"); if (resposta != null) { rptRespostasQuestionario.DataSource = resposta.ListaItemQuestionarioParticipacao; rptRespostasQuestionario.DataBind(); } } } else { lblResposta.Text = campo.Resposta; } } } }