2009-07-23 5 views
2

J'essaye de configurer un ListBox de sorte que chaque article ait un bloc de texte et un combobox, répartis également sur toute la largeur de la listbox mais je n'arrive pas à trouver la combinaison magique des propriétés ColumnDefinition pour le faire. Voici mon DataTemplate pour l'élément de la liste. Je l'ai nettoyé car c'était mal, de toute façon.Fractionner la largeur de façon égale entre deux contrôles constituant un élément de liste?

 <DataTemplate x:Key="MyDataTemplate"> 
      <Grid> 
       <Grid.ColumnDefinitions> 
        <ColumnDefinition/> 
        <ColumnDefinition/> 
       </Grid.ColumnDefinitions> 
       <TextBlock Grid.Column="0" Text="{Binding XPath=text()}"/> 
       <ComboBox Grid.Column="1" SelectedIndex="0" ItemsSource="{Binding Source={StaticResource Names}, XPath=Name}"></ComboBox> 
      </Grid> 
     </DataTemplate> 

J'ai testé une application simple avec une grille sur une fenêtre. Le fait de spécifier deux ColumnDefinitions les fait automatiquement prendre la moitié de la largeur, ce qui est bien, mais quand on fait de même dans un datatemplate listbox, le comportement est différent.

Comment changer le datatemplate pour le faire fonctionner?

Merci!

Répondre

Questions connexes