Je veux mettre en œuvre un FileNameEditor personnalisé; Je veux définir mon propre filtre et je veux être en mesure de sélectionner plusieurs fichiers.sur mesure FileNameEditor
public class Settings
{
[EditorAttribute(typeof(FileNamesEditor), typeof(System.Drawing.Design.UITypeEditor))]
public string FileNames { get; set; }
}
public class FileNamesEditor : FileNameEditor
{
protected override void InitializeDialog(OpenFileDialog openFileDialog)
{
openFileDialog.Multiselect = true;
openFileDialog.Filter = "Word|*.docx|All|*.*";
base.InitializeDialog(openFileDialog);
}
}
Cela ne tient pas la propriété de filtre et bien que je suis en mesure de sélectionner plusieurs fichiers, je ne peux pas les attribuer à ma propriété, car Settings.FileNames Settings.FileNames est de type string [] et le résultat de la classe dérivée est une chaîne. Comment puis-je dire à ma classe dérivée de retourner les noms de fichiers de OpenFileDialog et comment faire fonctionner le filtre? Qu'est-ce que je rate?
Je ne comprends pas vraiment votre question, la boîte de dialogue a une propriété appelée FileNames que vous pouvez faire foreach over. Je ne suis pas non plus dans la classe Settings. Qu'est-ce qui doit être dans la propriété FileNames? Voulez-vous les fichiers séparés par des virgules? – rfcdejong
La classe paramètres organisera plusieurs paramètres tels que les fichiers d'entrée pour calculer, chemins d'accès aux assemblées d'aide, options de format de sortie, les paramètres de la mondialisation et d'autres ... il est sérialisée lors de l'enregistrement des paramètres et chargés à chaque démarrage de programm pour enregistrer l'utilisateur de sélectionner ceux-ci à chaque démarrage de l'application. Les fichiers d'entrée doivent être choosable au moyen d'un OpenFileDialog ... les paramètres sont une classe générique indiqué dans PropertyGrid. – Llarian