Fórum pegar mais de uma string no checkedlistbox usando um arrayList #585639
06/09/2017
0
Fala galera boa tarde.
estou com uma dificuldade em pegar minhas strings do meu checkedlistbox para fazer um update no meu sistema.
o meu real cenário é esse, eu consigo fazer o insert pelo checkedlistbox concatenando mais de uma string e armazenando em uma tabela chamada alunos e armazeno minhas strings selecionadas na coluna atividade.
Quando eu vou fazer o update nao consigo pegar mais de uma string para atualizar meu checkedlistbox, ele retorna apenas uma selecionada quando clico no meu botao de atualizar as informação.
segue o codigo para entender melhor.
esse é meu codigo para fazer o update atraves do ArrayLisyt onde pego os meus textbox, e comboBox
esse é minha classe onde esta os parametros para realizar o update.
estou com uma dificuldade em pegar minhas strings do meu checkedlistbox para fazer um update no meu sistema.
o meu real cenário é esse, eu consigo fazer o insert pelo checkedlistbox concatenando mais de uma string e armazenando em uma tabela chamada alunos e armazeno minhas strings selecionadas na coluna atividade.
Quando eu vou fazer o update nao consigo pegar mais de uma string para atualizar meu checkedlistbox, ele retorna apenas uma selecionada quando clico no meu botao de atualizar as informação.
segue o codigo para entender melhor.
esse é meu codigo para fazer o update atraves do ArrayLisyt onde pego os meus textbox, e comboBox
private void button1_Click(object sender, EventArgs e)
{
SysDBADM obj = new SysDBADM();
ArrayList arr = new ArrayList();
try
{
arr.Add(TB_cod.Text);
arr.Add(TB_nome.Text);
arr.Add(TB_idade.Text);
arr.Add(TB_endereco.Text);
arr.Add(TB_quadra_lote.Text);
arr.Add(MD_telefoneCel.Text);
arr.Add(TB_email.Text);
arr.Add(TB_cidade.Text);
arr.Add(TB_uf.Text);
arr.Add(TB_nomepai.Text);
arr.Add(TB_nomemae.Text);
arr.Add(CB_ativo.Text);
arr.Add(CLB_atividade.Text);// esse é meu checkedlistbox
if (obj.Update(arr))
{
TB_cod.Clear();
TB_nome.Clear();
TB_idade.Clear();
TB_endereco.Clear();
TB_quadra_lote.Clear();
MD_telefoneFixo.Clear();
MD_telefoneCel.Clear();
TB_email.Clear();
TB_cidade.Clear();
TB_uf.Clear();
TB_nomepai.Clear();
TB_nomemae.Clear();
CB_ativo.Text = "";
while (CLB_atividade.CheckedItems.Count > 0)
{
CLB_atividade.SetItemChecked(CLB_atividade.CheckedIndices[0],false);
}
MessageBox.Show("Cadastro Atualizado.", "Mensagem do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
MessageBox.Show("Erro ao Atualizar!", "Mesagem do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
catch (Exception erro)
{
MessageBox.Show(erro + "Erro Ocorrido");
}
}esse é minha classe onde esta os parametros para realizar o update.
public bool Update(ArrayList p_arrUpdate)
{
vsql = "UPDATE alunos SET nome = @nome, idade = @idade, endereco = @endereco, quadra_lote = @quadra_lote, telefone = @telefone, email = @email, cidade = @cidade, uf = @uf, nome_pai = @nome_pai, nome_mae = @nome_mae, situacao = @situacao, atividade = @atividade WHERE id_aluno = @id_aluno";
SqlCommand objcmd = null;
if (this.conectar())
try // ele responsavel por tentar executar o array, se der alguma coisa errada e vai cair no finally
{
objcmd = new SqlCommand(vsql, objCon);
objcmd.Parameters.Add(new SqlParameter("@id_aluno", p_arrUpdate[0]));
objcmd.Parameters.Add(new SqlParameter("@nome", p_arrUpdate[1]));
objcmd.Parameters.Add(new SqlParameter("@idade", p_arrUpdate[2]));
objcmd.Parameters.Add(new SqlParameter("@endereco", p_arrUpdate[3]));
objcmd.Parameters.Add(new SqlParameter("@quadra_lote", p_arrUpdate[4]));
objcmd.Parameters.Add(new SqlParameter("@telefone", p_arrUpdate[5]));
objcmd.Parameters.Add(new SqlParameter("@email", p_arrUpdate[6]));
objcmd.Parameters.Add(new SqlParameter("@cidade", p_arrUpdate[7]));
objcmd.Parameters.Add(new SqlParameter("@uf", p_arrUpdate[8]));
objcmd.Parameters.Add(new SqlParameter("@nome_pai", p_arrUpdate[9]));
objcmd.Parameters.Add(new SqlParameter("@nome_mae", p_arrUpdate[10]));
objcmd.Parameters.Add(new SqlParameter("@situacao", p_arrUpdate[11]));
objcmd.Parameters.Add(new SqlParameter("@atividade", p_arrUpdate[12])); // esse é meu parametro onde atualiza meus dados do meu checkedlistbox.
objcmd.ExecuteNonQuery();
return true;
}
catch (SqlException sqlerr)
{
throw sqlerr;
}
finally
{
this.desconectar();
}
else
{
return false;
}
}Lucas Pereira
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)