none
Como preencher um checkbox por um list RRS feed

  • Pergunta

  • Eu estou com uma dificuldade simples até mas não estou conseguindo preencher o meu checkbox no evento RowUpdating do meu GridView, estou trazendo um list<table> do meu Banco para preencher o checkbox.

    Eu estou preenchendo meu checkbox assim:

                ckProducts.DataSource = Product.ListProduct(ID);
                ckProducts.DataTextField = "Name";
                ckProducts.DataValueField = "ProductID";
                ckProducts.DataBind();

    para preencher o checkbox eu estou trazendo um DataTable do banco

    DataTable dt = Produto.ListDT(ProductID);

    if (dt.Rows.Count > 0)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        if (!string.IsNullOrEmpty(dt.Rows[i]["ProductID"].ToString()))
                        {
                            int ID_Product = Convert.ToInt32(dt.Rows[i]["ProductID"]);
                            bool x = Convert.ToBoolean(dt.Rows[i]["ProductID"]);
                            ckProducts.Items[ID_Product].Selected = x;
                        }
                    }
                }
    O problema é que no meu FOR ele está selecionando pelo índice e eu precisa que ele selecionasse pelo ID do produto.
    quarta-feira, 22 de janeiro de 2014 13:44

Todas as Respostas

  • Cara pega o índice e veja o nome dele, exemplo

      for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        if (!string.IsNullOrEmpty(dt.Rows[i]["ProductID"].ToString()))
                        {
    if(dt.Rows[i].Text == "NOME")
    {
     \\faça algo
    }
    
                        }
                    }

    Qualquer dúvida estou a disposição

    Se foi útil marque como útil

    quarta-feira, 22 de janeiro de 2014 16:00
  • Mas no meu caso todos os itens que estão retornando da minha datatable eu quero que apareça no checkbox, eu só não estou conseguindo deixar o checkbox devidamente selecionado.
    quarta-feira, 22 de janeiro de 2014 16:53
  • Cara, checkBOX ou dropDown ? chekBox é a caixinha que vc marca lá

    checkbox
    CHECKBOX

    DROPDOWN

    Dropdown

    você quer preencher seu "checkbox" com o retorno? não entendi

    quarta-feira, 22 de janeiro de 2014 17:16
  • Eu tenho esse checkbox que é preenchido dinamicamente pela função que eu descrevi acima, ok?

    Quando eu clico em editar no meu grid por exemplo o Combo 1 eu tenho que trazer uma lista de produtos do banco que pertencem a esse combo.

    Trazendo essa lista eu tenho que popular os checkbox com os respectivos produtos dessa lista.

    quarta-feira, 22 de janeiro de 2014 17:52
  • Consegui assim...

    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        if (!string.IsNullOrEmpty(dt.Rows[i]["ProductID"].ToString()))
                        {
                            int ID_Product = Convert.ToInt32(dt.Rows[i]["ProductID"]);
    
                            for (int cont = 0; cont < dtProducts.Rows.Count; cont++)
                            {
                                int Product_ID = Convert.ToInt32(dtProducts.Rows[cont]["ProductID"]);
    
                                if (Product_ID == ID_Product)
                                {
                                    ckProducts.Items[cont].Selected = true;
                                    
                                }
    
                            }
                                             
                            //O checkboxlist item [1] está selecionado? = Sim / Não
                            //ckProducts.Items[ID_Product].Selected = Convert.ToBoolean(dt.Rows[i]["ProductID"]);
                        }
                    }

    quarta-feira, 22 de janeiro de 2014 21:25