2008-12-24 11 views
3

J'ai commencé la maintenance de certains XAML mal écrits. Je suis relativement nouveau à XAML. Une chose dont j'ai besoin est - les colonnes de la grille doivent ajuster automatiquement leur largeur par le contenu du texte.Pourquoi XAML Width = "Auto" ne fonctionne pas pour moi?

La documentation MSDN sur GridViewColumn.Width dit - définissez-le sur Auto pour activer le comportement de dimensionnement automatique. Cependant, même si le code se lit comme suit, les largeurs de colonnes restent les mêmes quel que soit le texte du contenu.

<ListView.View> 
<GridView> 
<GridViewColumn x:Name="lstColName" Width="200">Name</GridViewColumn> 
<GridViewColumn x:Name="lstColPath" Width="Auto">Path</GridViewColumn> 
</GridView> 
</ListView.View> 

Répondre

0

Auto fonctionne bien comme ci-dessous.

<ListView> 
     <ListView.View> 
      <GridView> 
       <GridViewColumn x:Name="Spoons" Width="Auto"> 

       </GridViewColumn> 

      </GridView> 
     </ListView.View> 
    </ListView> 
2

Le GridView recalcule tailles de contenu de colonne uniquement lorsque le modèle ou le changement de collection de colonnes interne, c'est pourquoi Width="Auto" ne fonctionne que sur le chargement du GridView.

Here est un article sur une approche possible d'une solution.

Questions connexes