Inquiridor
Como preencher um checkbox por um list

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.
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
-
-
-
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.
-
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"]); } }