31 votes

Chaîne de caractères à plusieurs lignes dans une PropertyGrid

Existe-t-il un éditeur intégré pour une chaîne de caractères de plusieurs lignes dans un fichier de type PropertyGrid .

50voto

fryguybob Points 2886

J'ai trouvé que System.Design.dll a System.ComponentModel.Design.MultilineStringEditor qui peut être utilisé comme suit :

public class Stuff
{
    [Editor(typeof(MultilineStringEditor), typeof(UITypeEditor))]
    public string MultiLineProperty { get; set; }
}

2voto

Hector Sosa Jr Points 3422

Non, vous devrez créer ce que l'on appelle un éditeur modal de type UI. Vous devrez créer une classe qui hérite de UITypeEditor. Il s'agit essentiellement d'un formulaire qui s'affiche lorsque vous cliquez sur le bouton représentant une ellipse sur le côté droit de la propriété que vous êtes en train de modifier.

Le seul inconvénient que j'ai trouvé, c'est que je devais décorer la propriété de la chaîne spécifique avec un attribut spécifique. Cela fait un moment que je n'ai pas eu à le faire. J'ai trouvé ces informations dans un livre de Chris Sells intitulé "Windows Forms Programming in C#".

Il y a une grille de propriété commerciale appelée Grille de propriétés intelligentes.NET par VisualHint.

0voto

Ilya Ryzhenkov Points 5731

Oui. Je ne me souviens plus comment il s'appelle, mais regardez l'éditeur de propriétés d'éléments pour quelque chose comme ComboBox

Édité : A partir de @ fryguybob ComboBox.Items utilise l'éditeur System.Windows.Forms.Design.ListControlStringCollectionEditor.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X