1 pièce(s) jointe(s)
[C#] Comment garder des éléments en mémoire lors du Dispose() d'une Form.
Bonjour.
Dans un programme sur lequel je travaille, je fait appel à une fenêtre avec des éléments de celle-ci partagés entre plusieurs fenêtres. J'aimerai donc que lorsque j'appelle la méthode Dispose() de celle-ci, ces éléments ne soient pas supprimés. Voici le code de l'appel à la fenêtre :
Code:
1 2 3 4
| private void FenêtreDesErreurs(object sender, EventArgs e)
{
(new Erreurs(erronés, nonSupprimés)).ShowDialog();
} |
Dans lequel erronés et nonSupprimés sont des ListBox.
Et celui de la fenêtre elle même :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| public partial class Erreurs : Form
{
public Erreurs(ListBox erronés, ListBox nonSupprimés)
{
InitializeComponent();
Controls.Add(erronés);
Controls.Add(nonSupprimés);
}
private void fermer_Click(object sender, EventArgs e)
{
Dispose();
}
} |
J'ai tenté d'appeller Dispose(false), mais alors la fenêtre principale reste bloquée, car la fenêtre était modale.
Une autre possibilité serait de passer en paramètre non pas le composant ListBox, mais uiquement la liste contenue dans celui-ci, mais je n'ai pas trouvé comment, ni même si c'est faisable. (Je fonctionnait comme celà en Java, mais je ne sais pas si il y à un équivalent en C#)
Any idea?
Merci d'avance.