Comment laisser "DataGridViewTextBoxColumn
" dans DataGridView
prend en charge la propriété Multiline?Comment définir la colonne de la zone de texte DataGridView sur plusieurs lignes?
Répondre
Vous devriez être en mesure d'atteindre cet objectif en réglant le WrapMode
du DefaultCellStyle
de votre DataGridViewTextBoxColumn
sur true
.
Outre la mise WrapMode
du DefaultCellStyle
, vous pouvez effectuer les opérations suivantes:
- Vous devez attraper GridView de
EditingControlShowing
événement - Cast
Control
propriété sur les EventArgs du type que vous voulez (c.-à-zone de texte, case à cocher ou bouton) - En utilisant ce type casted, modifiez la propriété
Multiline
comme ci-dessous:
private void MyGridView_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
TextBox TB = (TextBox)e.Control;
TB.Multiline = true;
}
J'ai trouvé qu'il y a deux choses que vous devez faire, à la fois dans le concepteur, pour qu'une cellule de texte affiche plusieurs lignes. Comme Tim S. Van Haren mentionné, vous devez définir WrapMode
du DefaultCellStyle
de votre DataGridViewTextBoxColumn
à true
. Et bien que cela fasse du texte, cela ne fait pas que la ligne se développe pour montrer quelque chose au-delà de la première ligne. En plus de WrapMode
, le AutoSizeRowsMode
du DataGridView
doit être défini sur la valeur d'énumération DataGridViewAutoSizeRowsMode
appropriée. Une valeur telle que DataGridViewAutoSizeRowsMode.AllCells
permet à la cellule de se développer verticalement et d'afficher tout le texte encapsulé.
Pour référence, 'AutoSizeRowsMode' est une propriété de' DataGridView', et doit être défini sur quelque chose comme 'DataGridViewAutoSizeRowsMode.AllCells' –
Comme l'a déclaré @BenScott, [' DataGridView.AutoSizeRowsMode'] (http: // msdn. microsoft.com/en-us/library/system.windows.forms.datagridview.autosizerowsmode%28v=vs.110%29.aspx) n'est pas une valeur booléenne et doit recevoir la valeur d'énumération 'DataGridViewAutoSizeRowsMode' appropriée. Je vais modifier la réponse pour refléter cela. –
- 1. Comment définir le texte d'en-tête de colonne pour la colonne spécifique dans Datagridview C#
- 2. Contrôle de zone de texte dans DataGridView
- 3. Comment obtenir la valeur de la colonne dynamiquement ajoutée de datagridview au moment de la publication
- 4. définir un texte de zone de texte égal au texte de la zone de texte sur un formulaire différent?
- 5. Comment multiplier et définir la valeur de multiplier sur la zone de texte en utilisant JavaScript
- 6. Comment afficher un nom de colonne dans la listbox en sélectionnant la colonne dans DataGridView
- 7. comment définir la mise au point dans l'index requis sur la zone de texte pour l'opéra
- 8. focus sur la zone de texte
- 9. Définir le focus dans la zone de texte WPF
- 10. Comment définir la largeur des colonnes dans datagridview
- 11. Suppression de plusieurs lignes dans un datagridview non lié
- 12. Comment définir la hauteur de la liste SWT en lignes?
- 13. Impossible de définir le focus sur la zone de texte dans dojo datagrid
- 14. Définir le caractère max (si la visibilité le permet) dans la zone de texte multiligne
- 15. Colonne de la case à cocher DataGridView - valeur et fonctionnalité
- 16. Alignement de texte TextBox sur plusieurs lignes (C# 2.0)
- 17. Datagridview - supprimer la partie avant la première colonne
- 18. Validation de la zone de texte
- 19. cellule de format de datagridview pour montrer la sous-chaîne du texte de colonne dans vb.net
- 20. Flex: Modification de la zone de texte
- 21. Dessiner en dehors de la zone de la colonne dans l'en-tête de la colonne listview
- 22. Comment obtenir la valeur de la première colonne de la ligne actuelle de Winform DataGridView?
- 23. Effet incandescent sur la zone de texte pendant l'activité
- 24. Ajouter un élément au-dessus de la zone de texte sans modifier la position de la zone de texte
- 25. JTextField non modifiable: Définir la zone visible
- 26. Désactiver la sélection de lignes dans un datagridview
- 27. obtenir la valeur de la zone de texte de php
- 28. Plusieurs lignes de texte dans UILabel
- 29. comment changer le style de police du texte dans la zone de texte sur le clic?
- 30. Tri DataGridView avec des valeurs nulles dans la colonne DateTime
vous devez également définir 'dataGridView.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;' voir [ce poste] (http://stackoverflow.com/questions/1706454/c-multiline-text-in-datagridview-control) – BornToCode
Rappelez-vous Si vous utilisez des styles de cellule personnalisés dans votre table, vous devrez spécifier le WrapMode pour chacun des wraps que vous souhaitez appliquer, car les nouveaux styles le définissent par défaut sur false. – kjhf