/// <summary> /// Refresh the ListView /// </summary> private void RefreshListView() { LvItems.Groups.Clear(); LvItems.Clear(); try { try { SQLiteConnection.Open(); } catch (Exception) { } LvItems.Columns.Add("RefArticle"); LvItems.Columns.Add("Description"); LvItems.Columns.Add("Familles"); LvItems.Columns.Add("Sous-familles"); LvItems.Columns.Add("Marques"); LvItems.Columns.Add("Quantité"); SQLiteDataReader = new SQLiteCommand("SELECT Articles.RefArticle, Articles.Description, Familles.Nom Famille, SousFamilles.Nom SousFamille, Marques.Nom Marque, Articles.Quantite FROM Articles, Marques, Familles, SousFamilles WHERE Articles.RefSousFamille = SousFamilles.RefSousFamille AND SousFamilles.RefFamille = Familles.RefFamille AND Articles.RefMarque = Marques.RefMarque", SQLiteConnection).ExecuteReader(); while (SQLiteDataReader.Read()) { ListViewItem = new ListViewItem(SQLiteDataReader["RefArticle"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["Description"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["Famille"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["SousFamille"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["Marque"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["Quantite"].ToString()); LvItems.Items.Add(ListViewItem); } SQLiteDataReader.Close(); } catch (SQLiteException SQLiteException) { MessageBox.Show(SQLiteException.Message); } finally { SQLiteConnection.Close(); } LvItems.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize); LvItems.Columns[0].Width = 0; }
/// <summary> /// Show Data depending on the selected item on the TreeView. /// </summary> private void ListView_Initialize() { int Index; LvItems.Groups.Clear(); LvItems.Clear(); try { try { SQLiteConnection.Open(); } catch (Exception) { } switch (TvItems.SelectedNode.Name) { case "AllItems": LvItems.Columns.Add("RefArticle"); LvItems.Columns.Add("Description"); LvItems.Columns.Add("Familles"); LvItems.Columns.Add("Sous-familles"); LvItems.Columns.Add("Marques"); LvItems.Columns.Add("Quantité"); SQLiteDataReader = new SQLiteCommand("SELECT Articles.RefArticle, Articles.Description, Familles.Nom Famille, SousFamilles.Nom SousFamille, Marques.Nom Marque, Articles.Quantite FROM Articles, Marques, Familles, SousFamilles WHERE Articles.RefSousFamille = SousFamilles.RefSousFamille AND SousFamilles.RefFamille = Familles.RefFamille AND Articles.RefMarque = Marques.RefMarque", SQLiteConnection).ExecuteReader(); while (SQLiteDataReader.Read()) { ListViewItem = new ListViewItem(SQLiteDataReader["RefArticle"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["Description"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["Famille"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["SousFamille"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["Marque"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["Quantite"].ToString()); LvItems.Items.Add(ListViewItem); } SQLiteDataReader.Close(); ItemReferenceColumnListViewHidden = true; break; case "Families": LvItems.Columns.Add("Description"); SQLiteDataReader = new SQLiteCommand("SELECT Nom FROM Familles", SQLiteConnection).ExecuteReader(); while (SQLiteDataReader.Read()) { LvItems.Items.Add(SQLiteDataReader["Nom"].ToString()); } SQLiteDataReader.Close(); ItemReferenceColumnListViewHidden = false; break; case "Brands": LvItems.Columns.Add("Description"); SQLiteDataReader = new SQLiteCommand("SELECT Nom FROM Marques", SQLiteConnection).ExecuteReader(); while (SQLiteDataReader.Read()) { LvItems.Items.Add(SQLiteDataReader["Nom"].ToString()); } SQLiteDataReader.Close(); ItemReferenceColumnListViewHidden = false; break; } for (Index = 0; Index < NumberFamilies; Index++) { if (TvItems.SelectedNode.Name == "Family" + Index) { LvItems.Columns.Add("Description"); SQLiteDataReader = new SQLiteCommand("SELECT SousFamilles.Nom FROM SousFamilles, Familles WHERE Familles.Nom = '" + TvItems.SelectedNode.Text + "' AND Familles.RefFamille = SousFamilles.RefFamille;", SQLiteConnection).ExecuteReader(); while (SQLiteDataReader.Read()) { LvItems.Items.Add(SQLiteDataReader["Nom"].ToString()); } SQLiteDataReader.Close(); ItemReferenceColumnListViewHidden = false; break; } } for (Index = 0; Index < NumberSubfamilies; Index++) { if (TvItems.SelectedNode.Name == "Subfamily" + Index) { LvItems.Columns.Add("RefArticle"); LvItems.Columns.Add("Description"); SQLiteDataReader = new SQLiteCommand("SELECT Articles.RefArticle, Articles.Description FROM Articles, SousFamilles WHERE SousFamilles.Nom = '" + TvItems.SelectedNode.Text + "' AND SousFamilles.RefSousFamille = Articles.RefSousFamille;", SQLiteConnection).ExecuteReader(); while (SQLiteDataReader.Read()) { ListViewItem = new ListViewItem(SQLiteDataReader["RefArticle"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["Description"].ToString()); LvItems.Items.Add(ListViewItem); } SQLiteDataReader.Close(); ItemReferenceColumnListViewHidden = true; break; } } for (Index = 0; Index < NumberBrands; Index++) { if (TvItems.SelectedNode.Name == "Brand" + Index) { LvItems.Columns.Add("RefArticle"); LvItems.Columns.Add("Description"); SQLiteDataReader = new SQLiteCommand("SELECT Articles.RefArticle, Articles.Description FROM Articles, Marques WHERE Marques.Nom = '" + TvItems.SelectedNode.Text + "' AND Marques.RefMarque = Articles.RefMarque;", SQLiteConnection).ExecuteReader(); while (SQLiteDataReader.Read()) { ListViewItem = new ListViewItem(SQLiteDataReader["RefArticle"].ToString()); ListViewItem.SubItems.Add(SQLiteDataReader["Description"].ToString()); LvItems.Items.Add(ListViewItem); } SQLiteDataReader.Close(); ItemReferenceColumnListViewHidden = true; break; } } } catch (SQLiteException SQLiteException) { MessageBox.Show(SQLiteException.Message); } finally { SQLiteConnection.Close(); } LvItems.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize); if (ItemReferenceColumnListViewHidden) { LvItems.Columns[0].Width = 0; } }