Je cherche un moyen de "remplir complètement" un GridViewColumn
avec une combo. Je suis capable de créer un modèle de cellule avec ComboBox
et cela fonctionne très bien. Mais la largeur et la hauteur de ComboBox
ne sont pas alignés avec le GridViewColumn
. Même si j'essaie de définir la même hauteur/largeur GridViewColumn
cache une partie de la comboBox.Comment "remplir" un GridViewColumn avec ComboBox (WPF)?
Il doit y avoir un cadre ou d'un style à donner des instructions WPF pour remplir le ComboBox
complètement dans l'espace disponible de GridViewColumn
Ceci est mon XAML.
<Window x:Class="WPFStarter.ComboInsideListView.ComboBoxInsideListViewUsingObject"
x:Name="userControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="ComboBoxInsideListViewUsingObject" Height="300" Width="400">
<Grid>
<ListView x:Name="listView" ItemsSource="{Binding ElementName=userControl,
Path=DataContext.Items}" SelectedItem="{Binding ElementName=userControl, Path=DataContext.SelectedItem, Mode=TwoWay}">
<ListView.View>
<GridView>
<GridViewColumn Header="First Name" DisplayMemberBinding="{Binding Path=First}"/>
<GridViewColumn Header="Gender">
<GridViewColumn.CellTemplate>
<DataTemplate>
<ComboBox x:Name="cmb_Gender" Width="75" SelectedValue="{Binding Path=Gender}"
ItemsSource="{Binding ElementName=userControl, Path=DataContext.Genders}" GotFocus="ComboBox_GotFocus" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
</Grid>
</Window>
Merci. Cela fonctionne bien, mais il laisse toujours une marge entre le Combo et la bordure de la cellule. Y a-t-il un moyen de supprimer cela? –
Vous pouvez essayer de changer le ControlTemplate: http://msdn.microsoft.com/en-us/library/ms788717.aspx – HCL
Merci, ce lien a aidé. Marquer votre réponse comme la solution. –