private void editionsBindingSource_CurrentChanged(object sender, EventArgs e) { EditionComplet edition = (EditionComplet)((BindingSource)sender).Current; label30.Text = (edition.Offert ? Properties.Resources.OffertLe : Properties.Resources.AcheteLe) + " :"; lbEditionEditeur.LinkArea = new LinkArea(0, string.IsNullOrEmpty(edition.Editeur.SiteWeb) ? 0 : edition.Editeur.SiteWeb.Length); if (lbEditionEditeur.Links.Count > 0) { lbEditionEditeur.Links[0].LinkData = edition.Editeur.SiteWeb; } lvEmprunts.Items.Clear(); foreach (Emprunt emprunt in edition.Emprunts.Emprunts) { ListViewItem li = new BDListViewItem(emprunt); lvEmprunts.Items.Add(li); if (emprunt.Pret) { li.ImageKey = "Emprunt"; } else { li.ImageKey = "Retour"; } li.Text = emprunt.sDate; li.SubItems.Add(emprunt.Emprunteur.ToString()); } ShowCouverture(0); }
private void ShowCouverture(int index) { if (CurrentCouverture == index) { return; // on passe trois fois dans cette procédure à l'initialisation des BindingSource } EditionComplet edition = (EditionComplet)editionCompletBindingSource.Current; lbPasDimage.Visible = edition.Couvertures.Count == 0; btImgPrec.Enabled = edition.Couvertures.Count > 1; btImgSuiv.Enabled = edition.Couvertures.Count > 1; if (edition.Couvertures.Count > 0) { using (new WaitingCursor()) { if (index < 0) { index = edition.Couvertures.Count - 1; } if (index > edition.Couvertures.Count - 1) { index = 0; } CurrentCouverture = index; Stream strm = Dummy.getImageStream(false, edition.Couvertures[CurrentCouverture].ID_Couverture, pictureBox1.Height, pictureBox1.Width, true); pictureBox1.Image = null; if (strm != null) { pictureBox1.Image = Image.FromStream(strm); } lbErreurChargement.Visible = pictureBox1.Image == null; pictureBox1.DoubleClick -= pictureBox1_DoubleClick; if (lbErreurChargement.Visible) { pictureBox1.Image = Properties.Resources.brokenimage; } else { pictureBox1.DoubleClick += pictureBox1_DoubleClick; } } } }