1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
|
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Spring.Context;
using Spring.Context.Support;
using IronStickMan.Abstract.Metier.Service;
using IronStickMan.Metier.Entite;
namespace IronStickMan
{
public partial class Selection : Form
{
public Selection()
{
IArticleService articleService;
IStockService stockService;
InitializeComponent();
IApplicationContext context = ContextRegistry.GetContext();
articleService = context["articleService"] as IArticleService;
stockService = context["stockService"] as IStockService;
IList<Article> listArt = articleService.getAll();
IList<Stock> listStck = stockService.getAll();
// Article
DataTable dtArt = new DataTable("Article");
dtArt.Columns.Add(new DataColumn("id"));
dtArt.Columns.Add(new DataColumn("designation"));
dtArt.Columns.Add(new DataColumn("prix"));
foreach (Article art in listArt)
{
DataRow drArt = dtArt.NewRow();
drArt["id"] = art.Id;
drArt["designation"] = art.Designation;
drArt["prix"] = art.Prix;
dtArt.Rows.Add(drArt);
}
MessageBox.Show(dtArt.Rows.Count.ToString());
MessageBox.Show(dtArt.Columns.Count.ToString());
//Stock
DataTable dtStck = new DataTable("Stock");
dtStck.Columns.Add(new DataColumn("id"));
dtStck.Columns.Add(new DataColumn("quantite"));
foreach (Stock stck in listStck)
{
DataRow drStck = dtStck.NewRow();
drStck["id"] = stck.Article.Id;
drStck["quantite"] = stck.Quantite;
dtStck.Rows.Add(drStck);
}
MessageBox.Show(dtStck.Rows.Count.ToString());
MessageBox.Show(dtStck.Columns.Count.ToString());
// DataSet Relation entre les 2 tables
DataSet ds = new DataSet();
ds.Tables.Add(dtArt);
ds.Tables.Add(dtStck);
DataColumn parentColumn = ds.Tables["Article"].Columns["id"];
DataColumn childColumn = ds.Tables["Stock"].Columns["id"];
DataRelation rel = new DataRelation("Article_Stock", parentColumn, childColumn);
ds.Tables["Stock"].ParentRelations.Add(rel);
dgvListeProduit.AutoGenerateColumns = false;
dgvListeProduit.DataSource = ds.Tables["Article"];
// Chargement des colonnes
/// Colonne Id
DataGridViewTextBoxColumn dgvTbCIdArticle = new DataGridViewTextBoxColumn();
int idArt;
idArt = dgvListeProduit.Columns.Add(dgvTbCIdArticle);
dgvListeProduit.Columns[idArt].DataPropertyName = "id";
dgvListeProduit.Columns[idArt].Name = "id";
dgvListeProduit.Columns[idArt].Visible = false;
/// Colonne NomProduit
DataGridViewTextBoxColumn dgvTbCNomArticle = new DataGridViewTextBoxColumn();
dgvTbCNomArticle.DataPropertyName = "designation";
dgvTbCNomArticle.HeaderText = "Nom du produit";
/// Colonne Prix
DataGridViewTextBoxColumn dgvTbCPrix = new DataGridViewTextBoxColumn();
dgvTbCPrix.DataPropertyName = "prix";
dgvTbCPrix.HeaderText = "Prix unitaire (TTC)";
/// Colonne Quantité dispo
DataGridViewTextBoxColumn dgvTbCQte = new DataGridViewTextBoxColumn();
dgvTbCQte.DataPropertyName = "quantite";
dgvTbCQte.HeaderText = "Quantite disponible";
// TODO : Indiquer la bonne DataSource
}
private void btValiderSelect_Click(object sender, EventArgs e)
{
this.Hide();
Form openVerifAchat = new VerificationAchat();
openVerifAchat.ShowDialog(this);
}
private void btAnnulSelectArt_Click(object sender, EventArgs e)
{
this.Close();
this.Owner.Show();
}
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
}
} |
Partager