8
votes

'System.Nullable ' ne contient pas de définition pour 'OK'

J'essaie un exemple de dialogue de fichier de base, Ici , et je reçois une erreur sur «OK», et je ne sais pas pourquoi.

erreur 1 'System.NULLABLABLE' ne contient pas de définition pour «OK» et aucune méthode d'extension 'OK' Accepter un premier argument de type 'System.NULLABLE' pourrait être trouvé (utilisez-vous une directive ou un assemblage Référence?) xxx


2 commentaires

De quelle assemblée est votre openfiledialog?


Cela fonctionne, pouvez-vous être un peu plus précis? L'erreur n'est probablement pas ici ...


3 Réponses :


11
votes

On dirait que vous avez une propriété locale appelée dialogresult . Essayez d'utiliser system.windows.forms.dialogresult.ok à la place.


0 commentaires

17
votes

Il existe deux versions de OpenFileDialog dans le fichier .NET: le WinForms un et le WPF un . On dirait que vous utilisez le WPF One, qui, en fait, renvoie un Nullable valeur de OpenFile . La version WinForm renvoie une valeur de dialogresult , ce qui semble être ce que vous attendez.


2 commentaires

La version que vous avez liée est la Win32 One. Je ne pense pas qu'il y ait un spécifique au WPF.


@Pug Notez que la classe en question est définie dans l'assemblage de présentationFramework, l'un des ensembles de noyau de WPF.



1
votes

On dirait qu'il tente d'utiliser showdialog pour system.windows.controls code>. Essayez de faire appel à l'appel Explicit à System.Windows.Forms CODE>

J'aime: P>

System.Windows.Forms.OpenFileDialog openFileDialog1 = new System.Windows.Forms.OpenFileDialog();


0 commentaires