2008-10-04 5 views
6

Je crée un contrôle personnalisé .net et il devrait être capable de charger plusieurs fichiers texte. J'ai une propriété publique nommée ListFiles avec les propriétés définies:Comment puis-je obtenir un OpenFileDialog dans la grille de propriétés d'un contrôle personnalisé?


[Browsable(true), Category("Configuration"), Description("List of Files to Load")] 
public string ListFiles 
    { 
    get { return m_oList; } 
    set { m_oList = value; } 
    } 

En fonction du type d'objet, (string, string [], Liste, ...), la grille de la propriété permet à l'utilisateur d'entrer un peu data .. Mon objectif serait d'avoir un openfiledialog filtré dans la grille de propriétés de mon composant qui permettrait à l'utilisateur de choisir plusieurs fichiers et de le renvoyer sous forme de tableau ou de chaîne (ou autre chose ...).

Sooo ... Voici ma question: Comment puis-je obtenir un OpenFileDialog dans la grille de propriétés d'un contrôle personnalisé?

Merci beaucoup!

Répondre

9

Vous pouvez utiliser UITypeEditor intégré. Il est appelé FileNameEditor

[EditorAttribute(typeof(System.Windows.Forms.Design.FileNameEditor), typeof(System.Drawing.Design.UITypeEditor))] 

public string SomeFilePath 
{ 
get; 
set; 
} 
+5

Vous devrez ajouter une référence System.Design.dll. Le fichier System.Design.dll n'est disponible que si vous ciblez .net framework 4.0 (complet), pas le profil client 4.0 – wruckie

Questions connexes