Il y a une erreur: "Le type en cours d'établissement n'est pas compatible avec la représentation de la valeur de l'étiquette."en utilisant la variable locale dans un autre bouton
string fi = null;
public void reading(object sender, EventArgs e)
{
read_from_folder = folderBrowserDialog1.ShowDialog();
if (read_from_folder == DialogResult.OK)
{
files_in_folder = Directory.GetFiles(folderBrowserDialog1.SelectedPath);
foreach (string fi files_in_folder)
{
string fi_nam = filese_in_folder.ToString();
...
}
}
}
private void button1_Click(object sender, EventArgs e)
{
DicomDirectory cop = new DicomDirectory(fi);
cop.Load(fi);
}
Si la chaîne "fi" est définie en dehors de la méthode, ce n'est pas une variable locale. Si ces méthodes sont dans la même classe et que "fi" est un membre de la classe, cela devrait fonctionner. – auujay
Il n'est pas clair où fi est défini. Peut-être que vous devriez coller plus de code et plus clair :) –
Publiez un code plus clair et un message d'erreur précis (si vous en avez un). À première vue, vous avez une variable de membre de classe définie comme 'chaîne fi;' mais vous utilisez aussi 'chaîne fi' comme locale dans une boucle' foreach'. Ce local va cacher la variable membre, vous obligeant à vous référer à la variable membre comme 'this.fi' dans la méthode qui offre le nom de la variable concurrente. –