UserForm.cs
Description du code
UserForm.cs est un fichier du projet BiblioBrol.Ce fichier est situé dans /var/www/bin/sniplets/bibliobrol/src/.
Projet BiblioBrol :
Gestion de media en CSharp.
Pour plus d'infos, vous pouvez consulter la brève analyse.
Code source ou contenu du fichier
Code c# (UserForm.cs) (289 lignes)
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using be.gaudry.bibliobrol.model.eid; using be.gaudry.bibliobrol.model; using be.gaudry.bibliobrol.view.utils; using be.gaudry.bibliobrol.model.identity; using be.gaudry.view; using be.gaudry.model.drawing; namespace be.gaudry.bibliobrol.view.dialogs { public partial class UserForm : MDIChildForm, IMDIChild { public const string startStr = "&Lire la carte"; public const string stopStr = "Arrêter"; public UserForm() { InitializeComponent(); this.SuspendLayout(); addToolStrip(mainTS); mainTLP.ColumnStyles[1].Width = 0F; fillSexCB(); //testReader(); this.ResumeLayout(false); } private void testReader() { bool dllExists = EidAdapter.testDllExists(); readCardTsB.Enabled = dllExists; readCardTsMi.Enabled = dllExists; readCardBtn.Enabled = dllExists; } /// <summary> /// Used only once into constructor call through the init() method call /// Sex values are same for all persons /// Selected value is set by fillPersInfos() method call /// </summary> private void fillSexCB() { } private void readCardBtn_Click(object sender, EventArgs e) { if (EidAdapter.testDllExists()) { if (!readCardBGW.CancellationPending && readCardBtn.Text.Equals(startStr)) { readCardBtn.Text = stopStr; mainTLP.ColumnStyles[1].Width = 200F; showProgress(true); User user = userBindingSource.Current as User; if (user == null) { } try { readCardBGW.RunWorkerAsync(user); } catch (InvalidOperationException) { } } else { try { readCardBGW.CancelAsync(); } catch (InvalidOperationException) { } } } else { MessageBox.Show( this, "Impossible de lire la carte d'identité car la dll n'est pas présente dans votre système.", "Carte d'identité", MessageBoxButtons.OK, MessageBoxIcon.Stop, MessageBoxDefaultButton.Button1 ); } } private void showProgress(bool show) { toolStripStatusLabel1.Visible = show; toolStripProgressBar1.Visible = show; if (show) { toolStripStatusLabel1.Text = ""; toolStripProgressBar1.Value = 0; } } private void readCardBGW_DoWork(object sender, DoWorkEventArgs e) { /* User user = userBindingSource.Current as User; if (user == null) { user = new User(); } EidAdapter.readCard(readCardBGW, e, user); */ EidAdapter.readCard(readCardBGW, e, (User)e.Argument); } private void readCardBGW_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { readCardBtn.Text = startStr; showProgress(false); //force update view userBindingSource.ResetBindings(true); } private void readCardBGW_ProgressChanged(object sender, ProgressChangedEventArgs e) { if (e.ProgressPercentage > 0) { toolStripProgressBar1.Value = e.ProgressPercentage; if (e.UserState != null) { { User user = (User)e.UserState; userBindingSource.DataSource = user; } /* else if (e.UserState is Address) { ((User)userBindingSource.DataSource).Address = (Address)e.UserState; } */ { toolStripStatusLabel1.Text = (string)e.UserState; } { cardGB.Visible = true; displayValidity((EidValidity)e.UserState); } { photoPB.Image = (Bitmap)e.UserState; } } } } private void displayValidity(EidValidity eidValidity) { beginValidityDateTB.Text = eidValidity.BeginDate.ToLongDateString(); endValidityDateTB.Text = eidValidity.EndDate.ToLongDateString(); issuingMunicipalityTB.Text = eidValidity.Issuer; chipNumberTB.Text = eidValidity.ChipNumber; cardNumberTB.Text = eidValidity.CardNumber; if (eidValidity.EndDate <= DateTime.Today) { MessageBox.Show( this, "La carte d'identité n'est plus valide!", "Carte d'identité", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1 ); } } private void onUnlockPerson_Click(object sender, EventArgs e) { User user = userBindingSource.Current as User; if (user != null && user.Id >= 0) { if (ModelAdapter.unlockPerson(user.Id)) { enableUnlockActions(false); } } } private void onSave_Click(object sender, EventArgs e) { User user = getUserFromForm(); if (user != null) { int testId = ModelAdapter.personExists(user); if (testId > 0) { DialogResult r = MessageBox.Show( this, String.Format("Il existe déjà une personne nommée {0} {1} dans l'application.\n\rDésirez-vous utiliser cette personne ?\n\rNon pour sauver une nouvelle personne ?", user.LastName, user.FirstName ), "Sauvegarde de la personne", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1 ); if (r == DialogResult.Yes) { user.Id = testId; } } user.Id = ModelAdapter.saveUser(user); savePhoto(user); //this.Close(); } } private User getUserFromForm() { User user = userBindingSource.Current as User; return user; } public void setUser(User user) { enableUnlockActions(user.Edited); userBindingSource.DataSource = user; photoPB.ImageLocation = Img.getPersImgPath(user); } private void savePhoto(Person person) { string newImgPath = Img.getPersImgPath(person); bool newImage = true; if (System.IO.File.Exists(newImgPath)) { DialogResult r = MessageBox.Show( this, "Une photo était déjà présente pour cette personne.\r\nDésirez-vous écraser l'ancien fichier par cette nouvelle photo?", "Sauvegarde de photo", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1 ); newImage = (r == DialogResult.Yes); } if (newImage) { photoPB.Image.Save(newImgPath, System.Drawing.Imaging.ImageFormat.Jpeg); } } private void onModifyPhoto_Click(object sender, EventArgs e) { ImageHelper.setImageLocation(this, photoPB); } private void enableReadCardActions(bool enabled) { readCardBtn.Enabled = enabled; readCardCTsMi.Enabled = enabled; readCardTsMi.Enabled = enabled; mainTLP.ColumnStyles[1].Width = (enabled) ? 200F : 0F; } private void enableUnlockActions(bool enabled) { unlockLabel.Visible = enabled; unlockPersonBtn.Enabled = enabled; unlockPersonCTsMi.Enabled = enabled; unlockPersonTsMi.Enabled = enabled; } #region IMDIChild Members public MenuStrip getMainMenuStrip() { return mainMenuStrip; } #endregion } }
Structure et Fichiers du projet
Afficher/masquer...Icône | Nom | Taille | Modification |
Pas de sous-répertoires. | |||
Icône | Nom | Taille | Modification |
| _ | Répertoire parent | 0 octets | 1732280621 22/11/2024 14:03:41 |
Utilisation de l'explorateur de code
- Navigation :
- Un clic sur une icône de répertoire ouvre ce répertoire pour en afficher les fichiers.
- Lorsque le répertoire en cours ne contient pas de sous-répertoires il est possible de remonter vers le répertoire parent.
- La structure de répertoires en treetable (tableau en forme d'arborescence) n'est plus possibledans cette version.
- Un clic sur une icône de fichier ouvre ce fichier pour en afficher le code avec la coloration syntaxique adaptée en fonction du langage principal utilisé dans le fichier.
- Affichage :
- Il est possible de trier les répertoires ou les fichiers selon certains critères (nom, taille, date).
- Actions :
- Les actions possible sur les fichiers dépendent de vos droits d'utilisateur sur le site. Veuillez activer le mode utilisateur pour activer les actions.
Version en cache
22/11/2024 14:03:41 Cette version de la page est en cache (à la date du 22/11/2024 14:03:41) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 16/10/2009, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/cs-bibliobrol-source-rf-view/dialogs//UserForm.cs.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.