2009-09-09 24 views
7

La boîte de dialogue Infragistics UltraGrid vous permet de créer la dernière colonne d'un ressort de grille pour remplir la partie inutilisée restante du rectangle de délimitation des grilles.Les colonnes Infragistics UltraGrid ont un comportement «ressort»

____________________________ 
| Col1 | Col 2 | Col 3---->| 
|       | 

J'ai recherché mais je ne trouve pas de méthode de fabrication d'une colonne qui ne soit pas le ressort de la colonne d'extrémité pour remplir la largeur. Par exemple, une ligne qui a une description de texte suivie d'une colonne qui contient un bouton pour effectuer une action. Vous voulez que la description de texte prenne la plus grande partie de la largeur et que la colonne avec le bouton atteigne la fin du rectangle de délimitation de la grille.

__________________________________ 
| Text Col ------------>| Button | 
|        | 

Quelqu'un at-il une expérience de tenter d'obtenir le contrôle UltraGrid de le faire hors de la boîte, ou un hack pour le faire fonctionner?

+1

Pour aider ceux qui essaient d'accomplir le premier exemple (la dernière colonne occupe l'espace restant), vous devez définir 'AutoFitStyle = AutoFitStyle.ExtendLastColumn' sur la propriété' DisplayLayout' de la grille. –

Répondre

13

Cela peut être fait proprement en utilisant la grille Infragistics intégrée.

  1. Définissez le Grid.DisplayLayout.AutoFitStyle = AutoFitStyle.ResizeAllColumns.
  2. Définissez la largeur, les propriétés minWidth et maxWidth des colonnes que vous voulez rester dans une limite fixe (dans mon cas, la colonne avec le bouton est réglé sur 150 de large)

Toutes les colonnes qui ont un Les largeurs Min et Max fixées flottent entre le Min et le Max que vous leur fournissez, et lorsqu'elles atteignent leur Max, elles s'arrêtent de croître, et toutes les autres colonnes qui n'ont pas de Max vont continuer à croître et remplir l'espace horizontal restant .