vangou_be
Messages postés13Date d'inscriptionvendredi 22 octobre 2004StatutMembreDernière intervention 3 janvier 2009
-
27 janv. 2005 à 22:49
APWEB
Messages postés74Date d'inscriptionlundi 30 juin 2003StatutMembreDernière intervention18 octobre 2006
-
29 janv. 2005 à 13:12
Dans mon programme j'affiche un simple DataGrid.
Il est simple et j'ai choisi de ne pas le lier à un objet (mapping).
Le dataSource est donc une simple DataTable.
Voici le code: (ça peut être utile à d'autres d'ailleurs).
C'est simple et efficace.
Le problème c'est que je veux changer la largeur de certaines colonnes.
Comment faire ?
Quand je rajoute une colonne avec "myTable.Columns.Add()
", je peux récupérer un objet DataColumn, mais il n'a aucune propriété de design (width,...).
Partout je vois des exemple utilisant des TableStyles et des GridColumnsStyles, mais ils fonctionnent tous par mapping (quand on les lie à des objets). Que faire dans mon cas où je suis lié à une DataTable ?
vangou_be
Messages postés13Date d'inscriptionvendredi 22 octobre 2004StatutMembreDernière intervention 3 janvier 2009 29 janv. 2005 à 12:35
Ok, je vais donc associer à mon DataGrid un DataSet plutot qu'un DataTable.
Donc je crèe un DataSet dans lequel on retrouve mon DataTable.
Ca me donne ceci:
DataGridTableStyle myGridTableStyle =
new DataGridTableStyle(myCurrencyManager);
dataGrid1.TableStyles.Add(myGridTableStyle);
myGridTableStyle.GridColumnStyles[0].Width=200;
A la ligne du BindingContext malheureusement j'ai l'exception suivante:
System.ArgumentException: Impossible de créer une liste enfant pour le champ col1.