public ArrayList listar(string _n) { ArrayList arr = new ArrayList(); //Técnica para evitar SQL Injection //Ideal é separar classe de banco de dados do modelo string sql = "SELECT * FROM Produtos where nome like " + "@nome"; MySqlCommand commS = new MySqlCommand (sql, Conn.mConn); // adiciona-se o parametro, indicando o nome e o tipo commS.Parameters.Add("@nome", MySqlDbType.VarChar); // atribui-se o respectivo valor commS.Parameters["@nome"].Value = _n; DataTable dt = Conn.ExecuteQuery(commS); if (dt != null) { int i = 0; while (i < dt.Rows.Count) { Produto p = new Produto(); p.Nome = dt.Rows[i][1].ToString(); p.Codigo = int.Parse(dt.Rows[i][0].ToString()); p.descricao = dt.Rows[i][2].ToString(); //p.quantidade = double.Parse(dt.Rows[i][3].ToString()); //Armazenará a quantidade de produto selecionada pelo user p.quantidade = 0; p.Preco = double.Parse(dt.Rows[i][4].ToString()); arr.Add(p); i++; } } return arr; }
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) { //ultima coluna com o checkbox if (e.ColumnIndex == (dataGridView1.Columns.Count - 1)) { if (dataGridView1.Rows.Count > 0) { int indice = dataGridView1.CurrentRow.Index; prod = ((Produto)arr[indice]); this.Close(); } } //penultima coluna com o botao if (e.ColumnIndex == (dataGridView1.Columns.Count - 2)) { Quant q = new Quant(); q.ShowDialog(); double valor = q.quant; //adicionar ao arraylist int indice = dataGridView1.CurrentRow.Index; ((Produto)arr[indice]).Quantidade = valor; //mostrar a quantidade dataGridView1.Columns[3].Visible = true; //check.CellTemplate.Value = valor.ToString(); } }
private void btnSalvar_Click(object sender, EventArgs e) { Produto pr = new Produto(); pr.Nome = txtNome.Text; pr.Descricao = txtDescricao.Text; pr.Quantidade = double.Parse(txtEstoque.Text); pr.Preco = double.Parse(txtPreco.Text); pr.Salvar(); MessageBox.Show("Dados salvos com sucesso"); }
private void CarregaGrid() { Produto cl = new Produto(); //Faz a chamada ao método listar da classe cliente arr = cl.listar(nome_produto); //atribui o resultado dà propriedade DataSource da dataGridView dataGridView1.DataSource = arr; //adicionar botao no grid DataGridViewButtonColumn dgBtnCol = new DataGridViewButtonColumn(); dgBtnCol.Name = "Quantidade"; dgBtnCol.UseColumnTextForButtonValue = true; dgBtnCol.Text = "Adicionar Quant"; dataGridView1.Columns.Add(dgBtnCol); //adicionar checkbox DataGridViewCheckBoxColumn check = new DataGridViewCheckBoxColumn(); //check.Name = "Selecionar"; check.HeaderText = "Selecionar"; dataGridView1.Columns.Add(check); dataGridView1.Columns[0].Visible = false; dataGridView1.Columns[2].Visible = false; dataGridView1.Columns[3].Visible = false; }