DialogResult [Résolu]

Messages postés
6
Date d'inscription
vendredi 27 mars 2009
Dernière intervention
18 février 2011
- - Dernière réponse : Lutinore
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Dernière intervention
27 octobre 2012
- 21 févr. 2010 à 07:44
Bonjour,

Après avoir cherché un peu partout ( sauf si j'ai mal vu ), je suis désespéré ....

Voici mon code, il se trouve dans un bouton :

//Effacer la listeBox
fileCharger.Items.Clear();

folderBrowser.Description = "Sélectionner le Répertoire :";
folderBrowser.ShowNewFolderButton = false;

// Ouvrir la boite de Dialogue pour sélectionner un dossier
DialogResult result = folderBrowser.ShowDialog();

/##########################################################
ICI
/##########################################################

// Recupérer le PATH du répertoire
Repertoire = folderBrowser.SelectedPath;

// Rechercher les fichiers dans le répertoire
string[] nom = Directory.GetFiles(Repertoire);

foreach (string nomfile in nom)
{
int i = 0;
// Recupérer le nom du fichier
motRechercher = nomfile.Split(Recherche);
foreach (string newNomFile in motRechercher)
{
if (string.IsNullOrEmpty(newNomFile))
{
fileCharger.Items.Add("No Files");
continue;
}
if (i == 2)
{
fileCharger.Items.Add(newNomFile);
}
i++;
}
}

J'aimerais effectuer un test là ou il y a le 'ICI' du style :
if(result == DialogResult.OK)
{
// effectuer l'action
}

Mais rien n'a faire message d'erreur :

Error 1 'System.Nullable' does not contain a definition for 'OK' and no extension method 'OK' accepting a first argument of type 'System.Nullable' could be found (are you missing a using directive or an assembly reference?)
52 40 WpfApplication1

Comment dois-je l'utiliser ? SVP

Cordialement
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Dernière intervention
27 octobre 2012
3
Merci
Salut, tu ne dis pas quel composant FolderBrowser wpf tu utilises, mais apparemment il ne renvoie pas une énumération de type DialogResult mais un nullable de type bool.

if ( DialogResult.Value == true )
{

}

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 95 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Lutinore
Messages postés
6
Date d'inscription
vendredi 27 mars 2009
Dernière intervention
18 février 2011
0
Merci
Merci pour ta réponse :

C'est un FolderBrowserDialog() que j'utilise.

mais avec la réponse que tu m'as apporté, ça fonctionne très bien

Un peu tête en l'air, je l'avais testé mais avec des "" à true c'est à dire "true"

Merçi bcp Lutinore
Commenter la réponse de MadFox972
Messages postés
6
Date d'inscription
vendredi 27 mars 2009
Dernière intervention
18 février 2011
0
Merci
Bonjour,

Alors une autre petite question... Le teste du bouton OK fonctionne étant donné que j'utilise que ce test lorsque j'utilise le bouton Cancel, il s'arrête au test : if ( DialogResult.Value == true ) avec l'exception : Un objet qui autorise la valeur Null doit posséder une valeur.

D'où vient cette erreur ?

Cordialement
Commenter la réponse de MadFox972
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Dernière intervention
27 octobre 2012
0
Merci
Le principe d'un type nullable, c'est d'autoriser la valeur "null" pour un type qui ne peut nomalement pas être "null" comme les int, bool etc .. Il faut donc toujours tester si l'objet possède une valeur avant d'acceder à sa propriété Value.

if ( DialogResult.HasValue && DialogResult.Value )
{
// TRUE
}
Commenter la réponse de Lutinore

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.